shithub: mc

Download patch

ref: 8526055dff6cd1c350da84f97de89efa75606ec7
parent: 88cbe95a616e1cd947d0e30ab19368602b00b753
author: Ori Bernstein <[email protected]>
date: Fri Dec 4 06:05:16 EST 2015

Clean up test output.

    Make it more useful.

--- a/mbld/test.myr
+++ b/mbld/test.myr
@@ -16,8 +16,8 @@
 
 const test = {b
 	var tests : (byte[:][:], byte[:])[:]
+	var failed, p, ok
 	var bincmd
-	var failed : byte[:][:], ok
 
 	/* no implicit tests to run */
 	tests = [][:]
@@ -59,9 +59,10 @@
 	failed = [][:]
 	for (c, dir) in tests
 		setdir(b, dir)
-		if !runtest(c)
+		if !runtest(b, c)
 			ok = false
-			failed = std.slpush(failed, c[0])
+			p = std.pathcat(b.curdir, c[0])
+			failed = std.slpush(failed, p)
 		;;
 
 	;;
@@ -75,6 +76,9 @@
 	;;
 
 	printfailed(failed)
+	for f in failed
+		std.slfree(f)
+	;;
 	std.slfree(failed)
 	if ok
 		std.put("TESTS PASSED\n")
@@ -143,12 +147,14 @@
 	-> tests
 }
 
-const runtest = {cmd
-	var r, log
+const runtest = {b, cmd
+	var r, log, p
 
 	std.put("run")
 	for c in cmd
-		std.put(" {}", c)
+		p = std.pathcat(b.curdir, c)
+		std.put(" {}", p)
+		std.slfree(p)
 	;;
 	std.put(":\t")
 	match std.spork(cmd)