diff options
author | Bryan C. Mills <bcmills@google.com> | 2019-02-19 14:53:26 -0500 |
---|---|---|
committer | Bryan C. Mills <bcmills@google.com> | 2019-02-20 15:46:42 +0000 |
commit | dace6544b3ff077d8cc02fc37d59187be253ab70 (patch) | |
tree | 36ee7d9d6a3125e5b9df3585138522a251942042 | |
parent | 1e4a88fa0a599cb8c201996a5f7b069b85be9905 (diff) | |
download | go-dace6544b3ff077d8cc02fc37d59187be253ab70.tar.gz go-dace6544b3ff077d8cc02fc37d59187be253ab70.zip |
cmd/vet: make vet_test module-agnostic
vet_test currently uses a custom GOPATH for each test, but it turns
out not to be necessary.
Updates #30228
Change-Id: Id7a7bf6d759bd94adccf44e197be1728c2f23575
Reviewed-on: https://go-review.googlesource.com/c/163038
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
-rw-r--r-- | src/cmd/vet/testdata/asm/asm.go (renamed from src/cmd/vet/testdata/src/asm/asm.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/asm/asm1.s (renamed from src/cmd/vet/testdata/src/asm/asm1.s) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/assign/assign.go (renamed from src/cmd/vet/testdata/src/assign/assign.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/atomic/atomic.go (renamed from src/cmd/vet/testdata/src/atomic/atomic.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/bool/bool.go (renamed from src/cmd/vet/testdata/src/bool/bool.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/buildtag/buildtag.go (renamed from src/cmd/vet/testdata/src/buildtag/buildtag.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/cgo/cgo.go (renamed from src/cmd/vet/testdata/src/cgo/cgo.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/composite/composite.go (renamed from src/cmd/vet/testdata/src/composite/composite.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/copylock/copylock.go (renamed from src/cmd/vet/testdata/src/copylock/copylock.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/deadcode/deadcode.go (renamed from src/cmd/vet/testdata/src/deadcode/deadcode.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/httpresponse/httpresponse.go (renamed from src/cmd/vet/testdata/src/httpresponse/httpresponse.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/lostcancel/lostcancel.go (renamed from src/cmd/vet/testdata/src/lostcancel/lostcancel.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/method/method.go (renamed from src/cmd/vet/testdata/src/method/method.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/nilfunc/nilfunc.go (renamed from src/cmd/vet/testdata/src/nilfunc/nilfunc.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/print/print.go (renamed from src/cmd/vet/testdata/src/print/print.go) | 52 | ||||
-rw-r--r-- | src/cmd/vet/testdata/rangeloop/rangeloop.go (renamed from src/cmd/vet/testdata/src/rangeloop/rangeloop.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/shift/shift.go (renamed from src/cmd/vet/testdata/src/shift/shift.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/structtag/structtag.go (renamed from src/cmd/vet/testdata/src/structtag/structtag.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/tagtest/file1.go (renamed from src/cmd/vet/testdata/src/tagtest/file1.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/tagtest/file2.go (renamed from src/cmd/vet/testdata/src/tagtest/file2.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/testingpkg/tests.go (renamed from src/cmd/vet/testdata/src/testingpkg/tests.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/testingpkg/tests_test.go (renamed from src/cmd/vet/testdata/src/testingpkg/tests_test.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/unmarshal/unmarshal.go (renamed from src/cmd/vet/testdata/src/unmarshal/unmarshal.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/unsafeptr/unsafeptr.go (renamed from src/cmd/vet/testdata/src/unsafeptr/unsafeptr.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/testdata/unused/unused.go (renamed from src/cmd/vet/testdata/src/unused/unused.go) | 0 | ||||
-rw-r--r-- | src/cmd/vet/vet_test.go | 14 |
26 files changed, 31 insertions, 35 deletions
diff --git a/src/cmd/vet/testdata/src/asm/asm.go b/src/cmd/vet/testdata/asm/asm.go index 72ff452aae..72ff452aae 100644 --- a/src/cmd/vet/testdata/src/asm/asm.go +++ b/src/cmd/vet/testdata/asm/asm.go diff --git a/src/cmd/vet/testdata/src/asm/asm1.s b/src/cmd/vet/testdata/asm/asm1.s index c3ba986fb8..c3ba986fb8 100644 --- a/src/cmd/vet/testdata/src/asm/asm1.s +++ b/src/cmd/vet/testdata/asm/asm1.s diff --git a/src/cmd/vet/testdata/src/assign/assign.go b/src/cmd/vet/testdata/assign/assign.go index 112614e562..112614e562 100644 --- a/src/cmd/vet/testdata/src/assign/assign.go +++ b/src/cmd/vet/testdata/assign/assign.go diff --git a/src/cmd/vet/testdata/src/atomic/atomic.go b/src/cmd/vet/testdata/atomic/atomic.go index 650d56bdad..650d56bdad 100644 --- a/src/cmd/vet/testdata/src/atomic/atomic.go +++ b/src/cmd/vet/testdata/atomic/atomic.go diff --git a/src/cmd/vet/testdata/src/bool/bool.go b/src/cmd/vet/testdata/bool/bool.go index 20e01aa46f..20e01aa46f 100644 --- a/src/cmd/vet/testdata/src/bool/bool.go +++ b/src/cmd/vet/testdata/bool/bool.go diff --git a/src/cmd/vet/testdata/src/buildtag/buildtag.go b/src/cmd/vet/testdata/buildtag/buildtag.go index c2fd6aaaf2..c2fd6aaaf2 100644 --- a/src/cmd/vet/testdata/src/buildtag/buildtag.go +++ b/src/cmd/vet/testdata/buildtag/buildtag.go diff --git a/src/cmd/vet/testdata/src/cgo/cgo.go b/src/cmd/vet/testdata/cgo/cgo.go index 292d7fdab7..292d7fdab7 100644 --- a/src/cmd/vet/testdata/src/cgo/cgo.go +++ b/src/cmd/vet/testdata/cgo/cgo.go diff --git a/src/cmd/vet/testdata/src/composite/composite.go b/src/cmd/vet/testdata/composite/composite.go index 63a2837851..63a2837851 100644 --- a/src/cmd/vet/testdata/src/composite/composite.go +++ b/src/cmd/vet/testdata/composite/composite.go diff --git a/src/cmd/vet/testdata/src/copylock/copylock.go b/src/cmd/vet/testdata/copylock/copylock.go index 8079cf3248..8079cf3248 100644 --- a/src/cmd/vet/testdata/src/copylock/copylock.go +++ b/src/cmd/vet/testdata/copylock/copylock.go diff --git a/src/cmd/vet/testdata/src/deadcode/deadcode.go b/src/cmd/vet/testdata/deadcode/deadcode.go index af83cdfbb1..af83cdfbb1 100644 --- a/src/cmd/vet/testdata/src/deadcode/deadcode.go +++ b/src/cmd/vet/testdata/deadcode/deadcode.go diff --git a/src/cmd/vet/testdata/src/httpresponse/httpresponse.go b/src/cmd/vet/testdata/httpresponse/httpresponse.go index 6141f6e06d..6141f6e06d 100644 --- a/src/cmd/vet/testdata/src/httpresponse/httpresponse.go +++ b/src/cmd/vet/testdata/httpresponse/httpresponse.go diff --git a/src/cmd/vet/testdata/src/lostcancel/lostcancel.go b/src/cmd/vet/testdata/lostcancel/lostcancel.go index 1bbb22d27b..1bbb22d27b 100644 --- a/src/cmd/vet/testdata/src/lostcancel/lostcancel.go +++ b/src/cmd/vet/testdata/lostcancel/lostcancel.go diff --git a/src/cmd/vet/testdata/src/method/method.go b/src/cmd/vet/testdata/method/method.go index 51c3f65fcc..51c3f65fcc 100644 --- a/src/cmd/vet/testdata/src/method/method.go +++ b/src/cmd/vet/testdata/method/method.go diff --git a/src/cmd/vet/testdata/src/nilfunc/nilfunc.go b/src/cmd/vet/testdata/nilfunc/nilfunc.go index c34d60e052..c34d60e052 100644 --- a/src/cmd/vet/testdata/src/nilfunc/nilfunc.go +++ b/src/cmd/vet/testdata/nilfunc/nilfunc.go diff --git a/src/cmd/vet/testdata/src/print/print.go b/src/cmd/vet/testdata/print/print.go index 6bacd0fd74..7a4783aee4 100644 --- a/src/cmd/vet/testdata/src/print/print.go +++ b/src/cmd/vet/testdata/print/print.go @@ -126,16 +126,16 @@ func PrintfTests() { fmt.Printf("%U", x) // ERROR "Printf format %U has arg x of wrong type float64" fmt.Printf("%x", nil) // ERROR "Printf format %x has arg nil of wrong type untyped nil" fmt.Printf("%X", 2.3) // ERROR "Printf format %X has arg 2.3 of wrong type float64" - fmt.Printf("%s", stringerv) // ERROR "Printf format %s has arg stringerv of wrong type print.ptrStringer" - fmt.Printf("%t", stringerv) // ERROR "Printf format %t has arg stringerv of wrong type print.ptrStringer" - fmt.Printf("%s", embeddedStringerv) // ERROR "Printf format %s has arg embeddedStringerv of wrong type print.embeddedStringer" - fmt.Printf("%t", embeddedStringerv) // ERROR "Printf format %t has arg embeddedStringerv of wrong type print.embeddedStringer" - fmt.Printf("%q", notstringerv) // ERROR "Printf format %q has arg notstringerv of wrong type print.notstringer" - fmt.Printf("%t", notstringerv) // ERROR "Printf format %t has arg notstringerv of wrong type print.notstringer" - fmt.Printf("%t", stringerarrayv) // ERROR "Printf format %t has arg stringerarrayv of wrong type print.stringerarray" - fmt.Printf("%t", notstringerarrayv) // ERROR "Printf format %t has arg notstringerarrayv of wrong type print.notstringerarray" - fmt.Printf("%q", notstringerarrayv) // ERROR "Printf format %q has arg notstringerarrayv of wrong type print.notstringerarray" - fmt.Printf("%d", BoolFormatter(true)) // ERROR "Printf format %d has arg BoolFormatter\(true\) of wrong type print.BoolFormatter" + fmt.Printf("%s", stringerv) // ERROR "Printf format %s has arg stringerv of wrong type .*print.ptrStringer" + fmt.Printf("%t", stringerv) // ERROR "Printf format %t has arg stringerv of wrong type .*print.ptrStringer" + fmt.Printf("%s", embeddedStringerv) // ERROR "Printf format %s has arg embeddedStringerv of wrong type .*print.embeddedStringer" + fmt.Printf("%t", embeddedStringerv) // ERROR "Printf format %t has arg embeddedStringerv of wrong type .*print.embeddedStringer" + fmt.Printf("%q", notstringerv) // ERROR "Printf format %q has arg notstringerv of wrong type .*print.notstringer" + fmt.Printf("%t", notstringerv) // ERROR "Printf format %t has arg notstringerv of wrong type .*print.notstringer" + fmt.Printf("%t", stringerarrayv) // ERROR "Printf format %t has arg stringerarrayv of wrong type .*print.stringerarray" + fmt.Printf("%t", notstringerarrayv) // ERROR "Printf format %t has arg notstringerarrayv of wrong type .*print.notstringerarray" + fmt.Printf("%q", notstringerarrayv) // ERROR "Printf format %q has arg notstringerarrayv of wrong type .*print.notstringerarray" + fmt.Printf("%d", BoolFormatter(true)) // ERROR "Printf format %d has arg BoolFormatter\(true\) of wrong type .*print.BoolFormatter" fmt.Printf("%z", FormatterVal(true)) // correct (the type is responsible for formatting) fmt.Printf("%d", FormatterVal(true)) // correct (the type is responsible for formatting) fmt.Printf("%s", nonemptyinterface) // correct (the type is responsible for formatting) @@ -186,10 +186,10 @@ func PrintfTests() { Printf("d%", 2) // ERROR "Printf format % is missing verb at end of string" Printf("%d", percentDV) Printf("%d", &percentDV) - Printf("%d", notPercentDV) // ERROR "Printf format %d has arg notPercentDV of wrong type print.notPercentDStruct" - Printf("%d", ¬PercentDV) // ERROR "Printf format %d has arg ¬PercentDV of wrong type \*print.notPercentDStruct" + Printf("%d", notPercentDV) // ERROR "Printf format %d has arg notPercentDV of wrong type .*print.notPercentDStruct" + Printf("%d", ¬PercentDV) // ERROR "Printf format %d has arg ¬PercentDV of wrong type \*.*print.notPercentDStruct" Printf("%p", ¬PercentDV) // Works regardless: we print it as a pointer. - Printf("%q", &percentDV) // ERROR "Printf format %q has arg &percentDV of wrong type \*print.percentDStruct" + Printf("%q", &percentDV) // ERROR "Printf format %q has arg &percentDV of wrong type \*.*print.percentDStruct" Printf("%s", percentSV) Printf("%s", &percentSV) // Good argument reorderings. @@ -234,7 +234,7 @@ func PrintfTests() { Printf("%T", someFunction) // ok: maybe someone wants to see the type // Bug: used to recur forever. Printf("%p %x", recursiveStructV, recursiveStructV.next) - Printf("%p %x", recursiveStruct1V, recursiveStruct1V.next) // ERROR "Printf format %x has arg recursiveStruct1V\.next of wrong type \*print\.RecursiveStruct2" + Printf("%p %x", recursiveStruct1V, recursiveStruct1V.next) // ERROR "Printf format %x has arg recursiveStruct1V\.next of wrong type \*.*print\.RecursiveStruct2" Printf("%p %x", recursiveSliceV, recursiveSliceV) Printf("%p %x", recursiveMapV, recursiveMapV) // Special handling for Log. @@ -587,37 +587,37 @@ func UnexportedStringerOrError() { fmt.Printf("%s", unexportedInterface{3}) // ok; we can't see the problem us := unexportedStringer{} - fmt.Printf("%s", us) // ERROR "Printf format %s has arg us of wrong type print.unexportedStringer" - fmt.Printf("%s", &us) // ERROR "Printf format %s has arg &us of wrong type [*]print.unexportedStringer" + fmt.Printf("%s", us) // ERROR "Printf format %s has arg us of wrong type .*print.unexportedStringer" + fmt.Printf("%s", &us) // ERROR "Printf format %s has arg &us of wrong type [*].*print.unexportedStringer" usf := unexportedStringerOtherFields{ s: "foo", S: "bar", } - fmt.Printf("%s", usf) // ERROR "Printf format %s has arg usf of wrong type print.unexportedStringerOtherFields" - fmt.Printf("%s", &usf) // ERROR "Printf format %s has arg &usf of wrong type [*]print.unexportedStringerOtherFields" + fmt.Printf("%s", usf) // ERROR "Printf format %s has arg usf of wrong type .*print.unexportedStringerOtherFields" + fmt.Printf("%s", &usf) // ERROR "Printf format %s has arg &usf of wrong type [*].*print.unexportedStringerOtherFields" ue := unexportedError{ e: &errorer{}, } - fmt.Printf("%s", ue) // ERROR "Printf format %s has arg ue of wrong type print.unexportedError" - fmt.Printf("%s", &ue) // ERROR "Printf format %s has arg &ue of wrong type [*]print.unexportedError" + fmt.Printf("%s", ue) // ERROR "Printf format %s has arg ue of wrong type .*print.unexportedError" + fmt.Printf("%s", &ue) // ERROR "Printf format %s has arg &ue of wrong type [*].*print.unexportedError" uef := unexportedErrorOtherFields{ s: "foo", e: &errorer{}, S: "bar", } - fmt.Printf("%s", uef) // ERROR "Printf format %s has arg uef of wrong type print.unexportedErrorOtherFields" - fmt.Printf("%s", &uef) // ERROR "Printf format %s has arg &uef of wrong type [*]print.unexportedErrorOtherFields" + fmt.Printf("%s", uef) // ERROR "Printf format %s has arg uef of wrong type .*print.unexportedErrorOtherFields" + fmt.Printf("%s", &uef) // ERROR "Printf format %s has arg &uef of wrong type [*].*print.unexportedErrorOtherFields" uce := unexportedCustomError{ e: errorer{}, } - fmt.Printf("%s", uce) // ERROR "Printf format %s has arg uce of wrong type print.unexportedCustomError" + fmt.Printf("%s", uce) // ERROR "Printf format %s has arg uce of wrong type .*print.unexportedCustomError" uei := unexportedErrorInterface{} - fmt.Printf("%s", uei) // ERROR "Printf format %s has arg uei of wrong type print.unexportedErrorInterface" + fmt.Printf("%s", uei) // ERROR "Printf format %s has arg uei of wrong type .*print.unexportedErrorInterface" fmt.Println("foo\n", "bar") // not an error fmt.Println("foo\n") // ERROR "Println arg list ends with redundant newline" @@ -627,7 +627,7 @@ func UnexportedStringerOrError() { intSlice := []int{3, 4} fmt.Printf("%s", intSlice) // ERROR "Printf format %s has arg intSlice of wrong type \[\]int" nonStringerArray := [1]unexportedStringer{{}} - fmt.Printf("%s", nonStringerArray) // ERROR "Printf format %s has arg nonStringerArray of wrong type \[1\]print.unexportedStringer" + fmt.Printf("%s", nonStringerArray) // ERROR "Printf format %s has arg nonStringerArray of wrong type \[1\].*print.unexportedStringer" fmt.Printf("%s", []stringer{3, 4}) // not an error fmt.Printf("%s", [2]stringer{3, 4}) // not an error } @@ -677,5 +677,5 @@ func PointersToCompoundTypes() { type T1 struct { X *T2 } - fmt.Printf("%s\n", T1{&T2{"x"}}) // ERROR "Printf format %s has arg T1{&T2{.x.}} of wrong type print\.T1" + fmt.Printf("%s\n", T1{&T2{"x"}}) // ERROR "Printf format %s has arg T1{&T2{.x.}} of wrong type .*print\.T1" } diff --git a/src/cmd/vet/testdata/src/rangeloop/rangeloop.go b/src/cmd/vet/testdata/rangeloop/rangeloop.go index 4e21564186..4e21564186 100644 --- a/src/cmd/vet/testdata/src/rangeloop/rangeloop.go +++ b/src/cmd/vet/testdata/rangeloop/rangeloop.go diff --git a/src/cmd/vet/testdata/src/shift/shift.go b/src/cmd/vet/testdata/shift/shift.go index 6b7a5ac9e1..6b7a5ac9e1 100644 --- a/src/cmd/vet/testdata/src/shift/shift.go +++ b/src/cmd/vet/testdata/shift/shift.go diff --git a/src/cmd/vet/testdata/src/structtag/structtag.go b/src/cmd/vet/testdata/structtag/structtag.go index cbcc453376..cbcc453376 100644 --- a/src/cmd/vet/testdata/src/structtag/structtag.go +++ b/src/cmd/vet/testdata/structtag/structtag.go diff --git a/src/cmd/vet/testdata/src/tagtest/file1.go b/src/cmd/vet/testdata/tagtest/file1.go index 47fe3c80af..47fe3c80af 100644 --- a/src/cmd/vet/testdata/src/tagtest/file1.go +++ b/src/cmd/vet/testdata/tagtest/file1.go diff --git a/src/cmd/vet/testdata/src/tagtest/file2.go b/src/cmd/vet/testdata/tagtest/file2.go index 1f45efcbf2..1f45efcbf2 100644 --- a/src/cmd/vet/testdata/src/tagtest/file2.go +++ b/src/cmd/vet/testdata/tagtest/file2.go diff --git a/src/cmd/vet/testdata/src/testingpkg/tests.go b/src/cmd/vet/testdata/testingpkg/tests.go index 69d29d3c6c..69d29d3c6c 100644 --- a/src/cmd/vet/testdata/src/testingpkg/tests.go +++ b/src/cmd/vet/testdata/testingpkg/tests.go diff --git a/src/cmd/vet/testdata/src/testingpkg/tests_test.go b/src/cmd/vet/testdata/testingpkg/tests_test.go index 09bb98d980..09bb98d980 100644 --- a/src/cmd/vet/testdata/src/testingpkg/tests_test.go +++ b/src/cmd/vet/testdata/testingpkg/tests_test.go diff --git a/src/cmd/vet/testdata/src/unmarshal/unmarshal.go b/src/cmd/vet/testdata/unmarshal/unmarshal.go index b387bbbd23..b387bbbd23 100644 --- a/src/cmd/vet/testdata/src/unmarshal/unmarshal.go +++ b/src/cmd/vet/testdata/unmarshal/unmarshal.go diff --git a/src/cmd/vet/testdata/src/unsafeptr/unsafeptr.go b/src/cmd/vet/testdata/unsafeptr/unsafeptr.go index e9b866ea21..e9b866ea21 100644 --- a/src/cmd/vet/testdata/src/unsafeptr/unsafeptr.go +++ b/src/cmd/vet/testdata/unsafeptr/unsafeptr.go diff --git a/src/cmd/vet/testdata/src/unused/unused.go b/src/cmd/vet/testdata/unused/unused.go index 1e83e90d68..1e83e90d68 100644 --- a/src/cmd/vet/testdata/src/unused/unused.go +++ b/src/cmd/vet/testdata/unused/unused.go diff --git a/src/cmd/vet/vet_test.go b/src/cmd/vet/vet_test.go index 6e8cc70440..e9b8c69d53 100644 --- a/src/cmd/vet/vet_test.go +++ b/src/cmd/vet/vet_test.go @@ -13,6 +13,7 @@ import ( "log" "os" "os/exec" + "path" "path/filepath" "regexp" "strconv" @@ -65,14 +66,9 @@ func Build(t *testing.T) { built = true } -func vetCmd(t *testing.T, args ...string) *exec.Cmd { - cmd := exec.Command(testenv.GoToolPath(t), "vet", "-vettool="+binary) - cmd.Args = append(cmd.Args, args...) - testdata, err := filepath.Abs("testdata") - if err != nil { - t.Fatal(err) - } - cmd.Env = append(os.Environ(), "GOPATH="+testdata) +func vetCmd(t *testing.T, arg, pkg string) *exec.Cmd { + cmd := exec.Command(testenv.GoToolPath(t), "vet", "-vettool="+binary, arg, path.Join("cmd/vet/testdata", pkg)) + cmd.Env = os.Environ() return cmd } @@ -119,7 +115,7 @@ func TestVet(t *testing.T) { cmd.Env = append(cmd.Env, "GOOS=linux", "GOARCH=amd64") } - dir := filepath.Join("testdata/src", pkg) + dir := filepath.Join("testdata", pkg) gos, err := filepath.Glob(filepath.Join(dir, "*.go")) if err != nil { t.Fatal(err) |