From ce7fc1788d1ea488b3711142c7d6cb7c829b185a Mon Sep 17 00:00:00 2001 From: Michael Matloob Date: Wed, 8 Jan 2020 13:25:08 -0500 Subject: [PATCH] cmd/go: convert tests using testdata/testimport dir to script framework Part of converting all tests to script framework to improve test parallelism. Updates #36320 Updates #17751 Change-Id: I3773508310865b198bc5f06dfc5ee7e34e92cdd0 Reviewed-on: https://go-review.googlesource.com/c/go/+/213818 Reviewed-by: Jay Conrod --- src/cmd/go/go_test.go | 25 ---------- .../testdata/script/test_relative_cmdline.txt | 50 +++++++++++++++++++ .../testdata/script/test_relative_import.txt | 30 +++++++++++ .../script/test_relative_import_dash_i.txt | 31 ++++++++++++ src/cmd/go/testdata/testimport/p.go | 3 -- src/cmd/go/testdata/testimport/p1/p1.go | 3 -- src/cmd/go/testdata/testimport/p2/p2.go | 3 -- src/cmd/go/testdata/testimport/p_test.go | 13 ----- src/cmd/go/testdata/testimport/x_test.go | 15 ------ 9 files changed, 111 insertions(+), 62 deletions(-) create mode 100644 src/cmd/go/testdata/script/test_relative_cmdline.txt create mode 100644 src/cmd/go/testdata/script/test_relative_import.txt create mode 100644 src/cmd/go/testdata/script/test_relative_import_dash_i.txt delete mode 100644 src/cmd/go/testdata/testimport/p.go delete mode 100644 src/cmd/go/testdata/testimport/p1/p1.go delete mode 100644 src/cmd/go/testdata/testimport/p2/p2.go delete mode 100644 src/cmd/go/testdata/testimport/p_test.go delete mode 100644 src/cmd/go/testdata/testimport/x_test.go diff --git a/src/cmd/go/go_test.go b/src/cmd/go/go_test.go index 57a5bb8f5a..46c2a3e2a7 100644 --- a/src/cmd/go/go_test.go +++ b/src/cmd/go/go_test.go @@ -1146,31 +1146,6 @@ func TestAccidentalGitCheckout(t *testing.T) { } } -func TestRelativeImportsGoTest(t *testing.T) { - tg := testgo(t) - defer tg.cleanup() - tg.run("test", "./testdata/testimport") -} - -func TestRelativeImportsGoTestDashI(t *testing.T) { - tg := testgo(t) - defer tg.cleanup() - - // don't let test -i overwrite runtime - tg.wantNotStale("runtime", "", "must be non-stale before test -i") - - tg.run("test", "-i", "./testdata/testimport") -} - -func TestRelativeImportsInCommandLinePackage(t *testing.T) { - tg := testgo(t) - defer tg.cleanup() - // TODO: tg.parallel() - files, err := filepath.Glob("./testdata/testimport/*.go") - tg.must(err) - tg.run(append([]string{"test"}, files...)...) -} - func TestVersionControlErrorMessageIncludesCorrectDirectory(t *testing.T) { tg := testgo(t) defer tg.cleanup() diff --git a/src/cmd/go/testdata/script/test_relative_cmdline.txt b/src/cmd/go/testdata/script/test_relative_cmdline.txt new file mode 100644 index 0000000000..2f9c80fe4d --- /dev/null +++ b/src/cmd/go/testdata/script/test_relative_cmdline.txt @@ -0,0 +1,50 @@ +# Relative imports in command line package + +# Run tests outside GOPATH. +env GOPATH=$WORK/tmp + +go test ./testimport/p.go ./testimport/p_test.go ./testimport/x_test.go +stdout '^ok' + +-- testimport/p.go -- +package p + +func F() int { return 1 } +-- testimport/p1/p1.go -- +package p1 + +func F() int { return 1 } +-- testimport/p2/p2.go -- +package p2 + +func F() int { return 1 } +-- testimport/p_test.go -- +package p + +import ( + "./p1" + + "testing" +) + +func TestF(t *testing.T) { + if F() != p1.F() { + t.Fatal(F()) + } +} +-- testimport/x_test.go -- +package p_test + +import ( + . "../testimport" + + "./p2" + + "testing" +) + +func TestF1(t *testing.T) { + if F() != p2.F() { + t.Fatal(F()) + } +} \ No newline at end of file diff --git a/src/cmd/go/testdata/script/test_relative_import.txt b/src/cmd/go/testdata/script/test_relative_import.txt new file mode 100644 index 0000000000..0d212b4924 --- /dev/null +++ b/src/cmd/go/testdata/script/test_relative_import.txt @@ -0,0 +1,30 @@ +# Relative imports in go test + +# Run tests outside GOPATH. +env GOPATH=$WORK/tmp + +go test ./testimport +stdout '^ok' + +-- testimport/p.go -- +package p + +func F() int { return 1 } +-- testimport/p1/p1.go -- +package p1 + +func F() int { return 1 } +-- testimport/p_test.go -- +package p + +import ( + "./p1" + + "testing" +) + +func TestF(t *testing.T) { + if F() != p1.F() { + t.Fatal(F()) + } +} \ No newline at end of file diff --git a/src/cmd/go/testdata/script/test_relative_import_dash_i.txt b/src/cmd/go/testdata/script/test_relative_import_dash_i.txt new file mode 100644 index 0000000000..dafa04ef02 --- /dev/null +++ b/src/cmd/go/testdata/script/test_relative_import_dash_i.txt @@ -0,0 +1,31 @@ +# Relative imports in go test -i + +# Run tests outside GOPATH. +env GOPATH=$WORK/tmp + +# Check that it's safe to pass -i (which installs dependencies in $GOPATH/pkg) to go test. +! stale runtime # don't let test -i overwrite runtime +go test -i ./testimport + +-- testimport/p.go -- +package p + +func F() int { return 1 } +-- testimport/p1/p1.go -- +package p1 + +func F() int { return 1 } +-- testimport/p_test.go -- +package p + +import ( + "./p1" + + "testing" +) + +func TestF(t *testing.T) { + if F() != p1.F() { + t.Fatal(F()) + } +} \ No newline at end of file diff --git a/src/cmd/go/testdata/testimport/p.go b/src/cmd/go/testdata/testimport/p.go deleted file mode 100644 index f94d2cd0e6..0000000000 --- a/src/cmd/go/testdata/testimport/p.go +++ /dev/null @@ -1,3 +0,0 @@ -package p - -func F() int { return 1 } diff --git a/src/cmd/go/testdata/testimport/p1/p1.go b/src/cmd/go/testdata/testimport/p1/p1.go deleted file mode 100644 index fd315272ea..0000000000 --- a/src/cmd/go/testdata/testimport/p1/p1.go +++ /dev/null @@ -1,3 +0,0 @@ -package p1 - -func F() int { return 1 } diff --git a/src/cmd/go/testdata/testimport/p2/p2.go b/src/cmd/go/testdata/testimport/p2/p2.go deleted file mode 100644 index d4888865dd..0000000000 --- a/src/cmd/go/testdata/testimport/p2/p2.go +++ /dev/null @@ -1,3 +0,0 @@ -package p2 - -func F() int { return 1 } diff --git a/src/cmd/go/testdata/testimport/p_test.go b/src/cmd/go/testdata/testimport/p_test.go deleted file mode 100644 index a3fb4a9e27..0000000000 --- a/src/cmd/go/testdata/testimport/p_test.go +++ /dev/null @@ -1,13 +0,0 @@ -package p - -import ( - "./p1" - - "testing" -) - -func TestF(t *testing.T) { - if F() != p1.F() { - t.Fatal(F()) - } -} diff --git a/src/cmd/go/testdata/testimport/x_test.go b/src/cmd/go/testdata/testimport/x_test.go deleted file mode 100644 index b253e3fd2d..0000000000 --- a/src/cmd/go/testdata/testimport/x_test.go +++ /dev/null @@ -1,15 +0,0 @@ -package p_test - -import ( - . "../testimport" - - "./p2" - - "testing" -) - -func TestF1(t *testing.T) { - if F() != p2.F() { - t.Fatal(F()) - } -} -- 2.50.0