Skip to content

Commit

Permalink
cmd/go: convert tests using testdata/src/syntaxerror to scripts
Browse files Browse the repository at this point in the history
This includes TestMatchesNoTestsDoesNotOverrideBuildFailure
and TestErrorMessageForSyntaxErrorInTestGoFileSaysFAIL.
Convert the tests that use the testdata/src/syntaxerror directory
to the script framework.

Part of converting all tests to script framework to improve
test parallelism.

Updates #36320
Updates #17751

Change-Id: I2b2b616e8c124996ae8c8e5b737f15bb493ec588
Reviewed-on: https://go-review.googlesource.com/c/go/+/212816
Run-TryBot: Michael Matloob <[email protected]>
TryBot-Result: Gobot Gobot <[email protected]>
Reviewed-by: Jay Conrod <[email protected]>
  • Loading branch information
matloob committed Jan 3, 2020
1 parent 0bd3853 commit a7be8cc
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 24 deletions.
19 changes: 0 additions & 19 deletions src/cmd/go/go_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1217,15 +1217,6 @@ func TestAccidentalGitCheckout(t *testing.T) {
}
}

func TestErrorMessageForSyntaxErrorInTestGoFileSaysFAIL(t *testing.T) {
tg := testgo(t)
defer tg.cleanup()
tg.setenv("GOPATH", filepath.Join(tg.pwd(), "testdata"))
tg.runFail("test", "syntaxerror")
tg.grepStderr("x_test.go:", "did not diagnose error")
tg.grepStdout("FAIL", "go test did not say FAIL")
}

func TestWildcardsDoNotLookInUselessDirectories(t *testing.T) {
tg := testgo(t)
defer tg.cleanup()
Expand Down Expand Up @@ -3812,16 +3803,6 @@ func TestMatchesNoTests(t *testing.T) {
tg.grepBoth(noMatchesPattern, "go test did not say [no tests to run]")
}

func TestMatchesNoTestsDoesNotOverrideBuildFailure(t *testing.T) {
tg := testgo(t)
defer tg.cleanup()
tg.parallel()
tg.setenv("GOPATH", filepath.Join(tg.pwd(), "testdata"))
tg.runFail("test", "-run", "ThisWillNotMatch", "syntaxerror")
tg.grepBothNot(noMatchesPattern, "go test did say [no tests to run]")
tg.grepBoth("FAIL", "go test did not say FAIL")
}

func TestMatchesNoBenchmarksIsOK(t *testing.T) {
tg := testgo(t)
defer tg.cleanup()
Expand Down
15 changes: 15 additions & 0 deletions src/cmd/go/testdata/script/test_match_no_tests_build_failure.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Test that when there's a build failure and a -run flag that doesn't match,
# that the error for not matching tests does not override the error for
# the build failure.

! go test -run ThisWillNotMatch syntaxerror
! stderr '(?m)^ok.*\[no tests to run\]'
stdout 'FAIL'

-- syntaxerror/x.go --
package p
-- syntaxerror/x_test.go --
package p

func f() (x.y, z int) {
}
14 changes: 14 additions & 0 deletions src/cmd/go/testdata/script/test_syntax_error_says_fail.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Test that the error message for a syntax error in a test go file
# says FAIL.

! go test syntaxerror
stderr 'x_test.go:' # check that the error is diagnosed
stdout 'FAIL' # check that go test says FAIL

-- syntaxerror/x.go --
package p
-- syntaxerror/x_test.go --
package p

func f() (x.y, z int) {
}
1 change: 0 additions & 1 deletion src/cmd/go/testdata/src/syntaxerror/x.go

This file was deleted.

4 changes: 0 additions & 4 deletions src/cmd/go/testdata/src/syntaxerror/x_test.go

This file was deleted.

0 comments on commit a7be8cc

Please sign in to comment.