]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/link: write to temp directory in test
authorCherry Zhang <cherryyz@google.com>
Fri, 3 Apr 2020 00:57:44 +0000 (20:57 -0400)
committerCherry Zhang <cherryyz@google.com>
Fri, 3 Apr 2020 13:42:33 +0000 (13:42 +0000)
In TestMMap, write to temporary directory, instead of the current
directory (which may not be writeable).

Fix linux-mips64le-mengzhuo builder.

Change-Id: I06dc3266f125523568c543634079c447d91903bb
Reviewed-on: https://go-review.googlesource.com/c/go/+/227077
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
src/cmd/link/internal/ld/outbuf_test.go

index 512238f39aec99dbfd1bc37ffa37fca7436d2d6f..67e4c9c47fbfa0ea8eee0319728c366970934f33 100644 (file)
@@ -5,7 +5,9 @@
 package ld
 
 import (
+       "io/ioutil"
        "os"
+       "path/filepath"
        "runtime"
        "testing"
 )
@@ -17,12 +19,16 @@ func TestMMap(t *testing.T) {
                t.Skip("unsupported OS")
        case "darwin", "dragonfly", "freebsd", "linux", "openbsd", "windows":
        }
-       filename := "foo.out"
+       dir, err := ioutil.TempDir("", "TestMMap")
+       if err != nil {
+               t.Fatal(err)
+       }
+       defer os.RemoveAll(dir)
+       filename := filepath.Join(dir, "foo.out")
        ob := NewOutBuf(nil)
        if err := ob.Open(filename); err != nil {
-               t.Errorf("error opening file: %v", err)
+               t.Fatalf("error opening file: %v", err)
        }
-       defer os.RemoveAll(filename)
        defer ob.Close()
        if err := ob.Mmap(1 << 20); err != nil {
                t.Errorf("error mmapping file %v", err)