diff options
Diffstat (limited to 'src/lib/testing.go')
| -rw-r--r-- | src/lib/testing.go | 24 | 
1 files changed, 19 insertions, 5 deletions
| diff --git a/src/lib/testing.go b/src/lib/testing.go index 121baca88..a5d960fe8 100644 --- a/src/lib/testing.go +++ b/src/lib/testing.go @@ -4,23 +4,37 @@  package testing +import ( +	"flag" +) + +var chatty bool; +func init() { +	flag.Bool("chatty", false, &chatty, "chatty"); +} +  export type Test struct {  	name string;  	f *() bool;  }  export func Main(tests *[]Test) { +	flag.Parse();  	ok := true;  	for i := 0; i < len(tests); i++ { +		if chatty { +			println("=== RUN ", tests[i].name); +		}  		ok1 := tests[i].f(); -		status := "FAIL"; -		if ok1 { -			status = "PASS" +		if !ok1 { +			ok = false; +			println("--- FAIL", tests[i].name); +		} else if chatty { +			println("--- PASS", tests[i].name);  		} -		ok = ok && ok1; -		println(status, tests[i].name);  	}  	if !ok {  		sys.exit(1);  	} +	println("PASS");  } | 
