1
0
mirror of https://github.com/golang/go synced 2024-11-11 23:50:22 -07:00

cmd/go: show FAIL for errors during test setup

For example, if an x_test.go file contains a syntax error,
b.test fails with an error message. But it wasn't printing
the same FAIL line that a build failure later would print.
This makes all the test failures that happen (once we
decide to start running tests) consistently say FAIL.

Fixes #4701.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/13431044
This commit is contained in:
Russ Cox 2013-09-10 14:43:57 -04:00
parent 627d17cf29
commit baed067d87
4 changed files with 22 additions and 2 deletions

View File

@ -104,6 +104,19 @@ cp -R testdata/local "testdata/$bad"
testlocal "$bad" 'with bad characters in path'
rm -rf "testdata/$bad"
TEST error message for syntax error in test go file says FAIL
export GOPATH=$(pwd)/testdata
if ./testgo test syntaxerror 2>testdata/err; then
echo 'go test syntaxerror succeeded'
ok=false
elif ! grep FAIL testdata/err >/dev/null; then
echo 'go test did not say FAIL:'
cat testdata/err
ok=false
fi
rm -f ./testdata/err
unset GOPATH
# Test tests with relative imports.
TEST relative imports '(go test)'
if ! ./testgo test ./testdata/testimport; then

View File

@ -423,10 +423,12 @@ func runTest(cmd *Command, args []string) {
if strings.HasPrefix(str, "\n") {
str = str[1:]
}
failed := fmt.Sprintf("FAIL\t%s [setup failed]\n", p.ImportPath)
if p.ImportPath != "" {
errorf("# %s\n%s", p.ImportPath, str)
errorf("# %s\n%s\n%s", p.ImportPath, str, failed)
} else {
errorf("%s", str)
errorf("%s\n%s", str, failed)
}
continue
}

View File

@ -0,0 +1 @@
package p

View File

@ -0,0 +1,4 @@
package p
func f() (x.y, z int) {
}