diff --git a/src/testsuite.in b/src/testsuite.in index 27afa032d1a17b6677f5f0d3aba1472a5e3f166f..3f03f5da4d9c775da8cdfaf155e29ce382f533c8 100644 --- a/src/testsuite.in +++ b/src/testsuite.in @@ -1,4 +1,4 @@ -test_true([["$Id: testsuite.in,v 1.27 1997/02/27 12:32:13 hubbe Exp $"]]) +test_true([["$Id: testsuite.in,v 1.28 1997/02/27 13:17:58 hubbe Exp $"]]) teste_eval_error(mixed foo=({}); sort(@foo); ) test_compile_error([[int foo() { return 1} ; constant foo=(["foo":foo]); return foo->foo();]]) test_eval_error(mixed *foo=({}); return mkmapping(foo,({1})); ) @@ -128,7 +128,13 @@ cond([[all_constants()->thread_create]], test_true(_tmp_mutex->lock()) test_true(_tmp_mutex->trylock()) test_true(_tmp_mutex->trylock()) + test_do(add_constant("_tmp_mutex_lock",_tmp_mutex->lock())) + test_false(_tmp_mutex->trylock()) + test_do(add_constant("_tmp_mutex_lock")) + test_true(_tmp_mutex->trylock()) test_do(add_constant("_tmp_mutex")) + test_any([[mixed *data=({0,Thread.Mutex(),Thread.Mutex(),0}); data[3]=data[2]->lock(); thread_create(lambda(mixed *data) { data[3]=data[1]->lock(); sleep(5); data[0]=1; destruct(data[3]); } data[3]=data[2]->lock(); return data[0]; ]],1) + test_any([[mixed *data=({1, Thread.Mutex()}); for(int e=0;e<3;e++) thread_create(lambda(mixed *data) { for(int e=0;e<1000;e++) { object o=data[1]->lock(); data[0]*=2; for(int d=0;d<5;d++) { data[0]--; data[0]*=2; } data[0]--; destruct(o); }}, data); return data[0];]],1) // /precompiled/condition test_true(Thread.Condition())