| # 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. |
| all=$(echo $defer_panic_recover $effective_go $error_handling $law_of_reflection $c_go_cgo slices go1) |
| # Write to temporary file to avoid mingw bash bug. |
| TMPFILE="${TMPDIR:-/tmp}/gotest3.$USER" |
| ./$1 >"$TMPFILE" 2>&1 || true |
| x=$(echo $(cat "$TMPFILE")) # extra echo canonicalizes |
| if ! echo "$x" | grep "$2" > /dev/null |
| echo $1 failed: '"'$x'"' is not '"'$2'"' |
| testit defer '^0 3210 2$' |
| testit defer2 '^Calling g. Printing in g 0 Printing in g 1 Printing in g 2 Printing in g 3 Panicking! Defer in g 3 Defer in g 2 Defer in g 1 Defer in g 0 Recovered in f 4 Returned normally from f.$' |
| testit eff_bytesize '^1.00YB 9.09TB$' |
| testit eff_sequence '^\[-1 2 6 16 44\]$' |
| testit go1 '^Christmas is a holiday: true Sleeping for 0.123s.*go1.go already exists$' |
| testit interface2 "^type: float64$" |