]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: fix tests from x/vgo repo
authorRuss Cox <rsc@golang.org>
Thu, 12 Jul 2018 17:52:14 +0000 (13:52 -0400)
committerRuss Cox <rsc@golang.org>
Thu, 12 Jul 2018 20:46:52 +0000 (20:46 +0000)
This CL fixes up tests from the x/vgo repo that are failing
on some of the builders.
It will be submitted together with CL 123576.

Change-Id: I6bec81a93ad4f7116e8edc8c15beafa25747530c
Reviewed-on: https://go-review.googlesource.com/123580
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/go/internal/modfetch/unzip.go
src/cmd/go/mod_test.go

index 3c698038ece3db78118f10f7dc998a60844544c4..c2cb17ebfc082646c8142cac4c3a5636611351b3 100644 (file)
@@ -10,6 +10,7 @@ import (
        "io"
        "io/ioutil"
        "os"
+       "path"
        "path/filepath"
        "sort"
        "strings"
@@ -57,7 +58,7 @@ func Unzip(dir, zipfile, prefix string, maxSize int64) error {
                if zf.Name == prefix || strings.HasSuffix(zf.Name, "/") {
                        continue
                }
-               if filepath.Clean(zf.Name) != zf.Name || strings.HasPrefix(zf.Name[len(prefix)+1:], "/") {
+               if path.Clean(zf.Name) != zf.Name || strings.HasPrefix(zf.Name[len(prefix)+1:], "/") {
                        return fmt.Errorf("unzip %v: invalid file name %s", zipfile, zf.Name)
                }
                s := int64(zf.UncompressedSize64)
index ebd9c9b57a972301e1a22e1afac936a3a4fdebb1..faebff0f7a833c3a5ebf4f8d52725d18f46abd90 100644 (file)
@@ -6,8 +6,10 @@ package main_test
 
 import (
        "bytes"
+       "internal/testenv"
        "io/ioutil"
        "os"
+       "os/exec"
        "path/filepath"
        "regexp"
        "sort"
@@ -81,48 +83,48 @@ func TestModGO111MODULE(t *testing.T) {
        // In GOPATH/src with go.mod.
        tg.cd(tg.path("gp/src/x/y/z"))
        tg.setenv("GO111MODULE", "auto")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 
        tg.cd(tg.path("gp/src/x/y/z/w"))
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 
        tg.setenv("GO111MODULE", "off")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 
        tg.setenv("GO111MODULE", "on")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ".*z[/\\]go.mod"`, "expected module mode enabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdout(`.*z[/\\]go.mod$`, "expected module mode enabled")
 
        // In GOPATH/src without go.mod.
        tg.cd(tg.path("gp/src/x/y"))
        tg.setenv("GO111MODULE", "auto")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 
        tg.setenv("GO111MODULE", "off")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 
        tg.setenv("GO111MODULE", "on")
-       tg.runFail("env", "-json")
+       tg.runFail("env", "GOMOD")
        tg.grepStderr(`cannot find main module root`, "expected module mode failure")
 
        // Outside GOPATH/src with go.mod.
        tg.cd(tg.path("gp/foo"))
        tg.setenv("GO111MODULE", "auto")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ".*foo[/\\]go.mod"`, "expected module mode enabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdout(`.*foo[/\\]go.mod$`, "expected module mode enabled")
 
        tg.cd(tg.path("gp/foo/bar/baz"))
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ".*foo[/\\]go.mod"`, "expected module mode enabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdout(`.*foo[/\\]go.mod$`, "expected module mode enabled")
 
        tg.setenv("GO111MODULE", "off")
-       tg.run("env", "-json")
-       tg.grepStdout(`"GOMOD": ""`, "expected module mode disabled")
+       tg.run("env", "GOMOD")
+       tg.grepStdoutNot(`go.mod`, "expected module mode disabled")
 }
 
 func TestModVersionsInGOPATHMode(t *testing.T) {
@@ -933,6 +935,11 @@ func TestModList(t *testing.T) {
 }
 
 func TestModInitLegacy(t *testing.T) {
+       testenv.MustHaveExternalNetwork(t)
+       if _, err := exec.LookPath("git"); err != nil {
+               t.Skip("skipping because git binary not found")
+       }
+
        tg := testGoModules(t)
        defer tg.cleanup()
 
@@ -1035,6 +1042,11 @@ func TestModRequireExcluded(t *testing.T) {
 }
 
 func TestModInitLegacy2(t *testing.T) {
+       testenv.MustHaveExternalNetwork(t)
+       if _, err := exec.LookPath("git"); err != nil {
+               t.Skip("skipping because git binary not found")
+       }
+
        tg := testGoModules(t)
        defer tg.cleanup()