#!/usr/bin/env 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.

set -e

goos=$(go env GOOS)

defer_panic_recover="
	defer
	defer2
"

effective_go="
	eff_bytesize
	eff_qr
	eff_sequence
"

error_handling="
	error
	error2
	error3
	error4
"

law_of_reflection="
	interface
	interface2
"

c_go_cgo="
	cgo1
	cgo2
	cgo3
	cgo4
"
# cgo1 and cgo2 don't run on freebsd, srandom has a different signature
if [ "$goos" == "freebsd" ]; then
	c_go_cgo="cgo3 cgo4"
fi

timeout="
	timeout1
	timeout2
"

gobs="
	gobs1
	gobs2
"

json="
	json1
	json2
	json3
	json4
	json5
"

image_package="
	image_package1
	image_package2
	image_package3
	image_package4
	image_package5
	image_package6
"

all=$(echo $defer_panic_recover $effective_go $error_handling $law_of_reflection $c_go_cgo $timeout $gobs $json $image_package slices go1)

for i in $all; do
	go build $i.go
done

# Write to temporary file to avoid mingw bash bug.
TMPFILE="${TMPDIR:-/tmp}/gotest3.$USER"

function testit {
	./$1 >"$TMPFILE" 2>&1 || true
	x=$(echo $(cat "$TMPFILE")) # extra echo canonicalizes
	if ! echo "$x" | grep "$2" > /dev/null
	then
		echo $1 failed: '"'$x'"' is not '"'$2'"'
	fi
}


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$"

testit json1 "^$"
testit json2 "the reciprocal of i is"
testit json3 "Age is int 6"
testit json4 "^$"

testit image_package1 "^X is 2 Y is 1$"
testit image_package2 "^3 4 false$"
testit image_package3 "^3 4 true$"
testit image_package4 "^image.Point{X:2, Y:1}$"
testit image_package5 "^{255 0 0 255}$"
testit image_package6 "^8 4 true$"

rm -f $all "$TMPFILE"
