Commit c702bdd8 authored by Russ Cox's avatar Russ Cox

script for running test programs in interpreter.

tweak test/literal.go to give more information.

R=austin
DELTA=45  (43 added, 0 deleted, 2 changed)
OCL=34381
CL=34398
parent c7d27f88
...@@ -6,10 +6,15 @@ ...@@ -6,10 +6,15 @@
package main package main
var nbad int
func assert(cond bool, msg string) { func assert(cond bool, msg string) {
if !cond { if !cond {
print("assertion fail: ", msg, "\n"); if nbad == 0 {
panic(1); print("BUG");
}
nbad++;
print(" ", msg);
} }
} }
...@@ -210,4 +215,8 @@ func main() { ...@@ -210,4 +215,8 @@ func main() {
assert(sj0 == sj1, "sj1"); assert(sj0 == sj1, "sj1");
assert(sj0 == sj2, "sj2"); assert(sj0 == sj2, "sj2");
assert(sj0 == sj3, "sj3"); assert(sj0 == sj3, "sj3");
if nbad > 0 {
println()
}
} }
#!/bin/bash
# Copyright 2009 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.
# Run the interpreter against all the Go test programs
# that begin with the magic
# // $G $D/$F.go && $L $F.$A && ./$A.out
# line and do not contain imports.
set -e
make
6g main.go && 6l main.6
(
for i in $(egrep -l '// \$G (\$D/)?\$F\.go \&\& \$L \$F\.\$A && \./\$A\.out' $GOROOT/test/*.go $GOROOT/test/*/*.go)
do
if grep '^import' $i >/dev/null 2>&1
then
true
else
if $GOROOT/usr/austin/eval/6.out -f $i >/tmp/out 2>&1 && ! test -s /tmp/out
then
echo PASS $i
else
echo FAIL $i
(
echo '>>> ' $i
cat /tmp/out
echo
) 1>&3
fi
fi
done | (tee /dev/fd/2 | awk '{print $1}' | sort | uniq -c) 2>&1
) 3>test.log
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment