diff --git a/src/testsuite.in b/src/testsuite.in index ffc81354ddef05b8e237fd8e04f0f83aec61a3f7..5414ee285c7708e1abba77f130601b9b39e1f7a5 100644 --- a/src/testsuite.in +++ b/src/testsuite.in @@ -1,4 +1,4 @@ -test_true([["$Id: testsuite.in,v 1.610 2003/02/28 19:44:37 grubba Exp $"]]); +test_true([["$Id: testsuite.in,v 1.611 2003/03/01 14:24:25 nilsson Exp $"]]); // This triggered a bug only if run sufficiently early. test_compile_any([[#pike 7.2]]) @@ -7571,7 +7571,9 @@ test_do(add_constant("PROG")) // - encode_value_canonic // - endgrent // - endpwent + // - enumerate +// Tested in lib // - equal // equal is already tested by this script @@ -7618,12 +7620,79 @@ test_eq(function_name(function_object),0) // - functionp // Tested in foop +// - gc +// gc is already tested above + // - get_all_groups +ifefun(get_all_groups,[[ + test_true(arrayp(get_all_groups())) + test_any([[ + foreach(get_all_groups(), array group) + foreach(group; int pos; array(string)|int|string value) + switch(pos) { + case 0: case 1: + if(!stringp(value)) return 0; + break; + case 2: + if(!intp(value)) return 0; + break; + case 3: + if(!arrayp(value)) return 0; + foreach(value, string user) + if(!stringp(user)) return 0; + break; + } + return 1; + ]], 1) +]]) + // - get_all_users +ifefun(get_all_users,[[ + test_true(arrayp(get_all_users())) + test_any([[ + foreach(get_all_users(), array user) + foreach(user; int pos; int|string value) + switch(pos) { + case 0: case 1: case 4: case 5: case 6: + if(!stringp(value)) return 0; + break; + case 2: case 3: + if(!intp(value)) return 0; + break; + } + return 1; + ]], 1) +]]) + // - get_dir +test_do(Stdio.recursive_rm("get_dir_test")) +test_do(mkdir("get_dir_test")) +test_equal(get_dir("get_dir_test"),({})) +test_do(Stdio.write_file("get_dir_test/x", "x")); +test_equal(get_dir("get_dir_test"),({"x"})) +test_do(Stdio.recursive_rm("get_dir_test")) + // - get_groups_for_user // - get_weak_flag + // - getcwd +test_true(stringp(getcwd())) +test_true(sizeof(getcwd())) +test_do(Stdio.recursive_rm("getcwd_test")) +test_do(mkdir("getcwd_test")) +test_any([[ + string a = getcwd(); + cd("getcwd_test"); + string b = getcwd(); + cd(".."); +#ifdef __NT__ + return a==getcwd() && b==a+"\\getcwd_test"; +#else + return a==getcwd() && b==a+"/getcwd_test"; +#endif +]], 1) +test_do(Stdio.recursive_rm("getcwd_test")) + // - getegid // - getenv // - geteuid @@ -7634,7 +7703,10 @@ test_eq(function_name(function_object),0) // - getgroups // - gethostbyaddr // - gethostbyname + // - gethostname +test_true(stringp(gethostname())) +test_true(sizeof(gethostname())) // - gethrtime // See time @@ -7646,8 +7718,18 @@ test_eq(function_name(function_object),0) // - getpwent // - getpwnam // - getpwuid + // - getsid +ifefun(getsid,[[ + test_true(intp(getsid())) + test_true(getsid()==getsid()) +]]) + // - getuid +ifefun(getuid,[[ + test_true(intp(getuid())) + test_true(getuid()==getuid()) +]]) // - glob test_false(glob("","a")) @@ -7694,7 +7776,20 @@ test_has_index([[ class {}() ]],"foo",0) test_has_index([[ (class{array _indices(){return({"a","b"});}})() ]],"b",1) // - has_prefix +test_true(has_prefix("abc","a")) +test_false(has_prefix("abc","b")) +test_true(has_prefix("abc","")) +test_true(has_prefix("","")) +test_false(has_prefix("","abc")) +test_true(has_prefix("\666abc","\666a")) + // - has_suffix +test_true(has_suffix("cba","a")) +test_false(has_suffix("cba","b")) +test_true(has_suffix("abc","")) +test_true(has_suffix("","")) +test_false(has_suffix("","abc")) +test_true(has_suffix("cba\666","a\666")) // - has_value define(test_has_value,[[test_true([[mixed foo=$1; return has_value(foo,$2)==$3;]])]]) @@ -7713,15 +7808,27 @@ test_has_value([[ class {}() ]],"foo",0) test_has_value([[ (class{array _values(){return({"a","b"});}})() ]],"b",1) // - hash -test_true(intp(hash("foo"))) -test_true(intp(hash("foo",10))) -test_true(hash("foo",10)<10) -test_true(hash("bar",10)<10) -test_true(hash("gazonk",10)<10) -test_eq(hash("foobargazonk"),hash("foobargazonk")) -test_false(hash("")) +test_eq(hash("foo"),2091538203) +test_eq(hash("foo",10),3) +test_eq(hash("bar"),2091518428) +test_eq(hash("bar",10),8) +test_eq(hash("b\666arqwerty1234"),1858424874) +test_eq(hash(""),0) // - hash_7_0 +define(test_hash,[[ + test_eq(hash_7_0($1),$2) + test_any([[ +#pike 7.0 +return hash($1); +]],$2) +]]) +test_hash("foo",27734) +test_hash([["foo",10]],4) +test_hash("bar",26689) +test_hash([["bar",10]],9) +test_hash("b\666arqwerty1234",1858424874) +test_hash("",0) // - indices test_equal(indices("foo"),({0,1,2}))