diff --git a/bin/test_pike.pike b/bin/test_pike.pike index b81315c9f60251ceb99cafc507191ed0afc1e92a..b5034eb590857020ec654a64bd63ebb742c81380 100755 --- a/bin/test_pike.pike +++ b/bin/test_pike.pike @@ -1,6 +1,6 @@ #!/usr/local/bin/pike -/* $Id: test_pike.pike,v 1.7 1998/03/20 22:29:39 hubbe Exp $ */ +/* $Id: test_pike.pike,v 1.8 1998/04/06 03:19:37 hubbe Exp $ */ #include <simulate.h> @@ -20,11 +20,13 @@ int main(int argc, string *argv) program testprogram; int start, fail, mem; int loop=1; + int end=0x7fffffff; foreach(Getopt.find_all_options(argv,aggregate( ({"help",Getopt.NO_ARG,({"-h","--help"})}), ({"verbose",Getopt.NO_ARG,({"-v","--verbose"})}), ({"start",Getopt.HAS_ARG,({"-s","--start-test"})}), + ({"end",Getopt.HAS_ARG,({"--end-after"})}), ({"fail",Getopt.MAY_HAVE_ARG,({"-f","--fail"})}), ({"loop",Getopt.MAY_HAVE_ARG,({"-l","--loop"})}), ({"trace",Getopt.MAY_HAVE_ARG,({"-t","--trace"})}), @@ -40,6 +42,7 @@ int main(int argc, string *argv) case "verbose": verbose+=foo(opt[1]); break; case "start": start=foo(opt[1]); start--; break; + case "end": end=foo(opt[1]); break; case "fail": fail+=foo(opt[1]); break; case "loop": loop+=foo(opt[1]); break; case "trace": t+=foo(opt[1]); break; @@ -207,6 +210,8 @@ int main(int argc, string *argv) if(fail && errors) exit(1); + + if(!--end) exit(0); a=b=0; } @@ -241,10 +246,7 @@ int main(int argc, string *argv) werror("Failed tests: "+errors+".\n"); } - if(verbose) - { - werror("Total tests: %d\n",successes+errors); - } + werror("Total tests: %d\n",successes+errors); return errors; }