Commit 16db1892 authored by Mostyn Bramley-Moore's avatar Mostyn Bramley-Moore Committed by Brad Fitzpatrick

syscall: make TestFcntlFlock more robust

Avoid the use of constant absolute temp files in tests.  This could
produce flaky results, for example on multiuser development machines.

Change-Id: Ia76157a0660fbe294bb31a46ded886cea5deec97
Reviewed-on: https://go-review.googlesource.com/40916Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
parent 69182885
...@@ -78,12 +78,16 @@ func TestFcntlFlock(t *testing.T) { ...@@ -78,12 +78,16 @@ func TestFcntlFlock(t *testing.T) {
} }
if os.Getenv("GO_WANT_HELPER_PROCESS") == "" { if os.Getenv("GO_WANT_HELPER_PROCESS") == "" {
// parent // parent
name := filepath.Join(os.TempDir(), "TestFcntlFlock") tempDir, err := ioutil.TempDir("", "TestFcntlFlock")
if err != nil {
t.Fatalf("Failed to create temp dir: %v", err)
}
name := filepath.Join(tempDir, "TestFcntlFlock")
fd, err := syscall.Open(name, syscall.O_CREAT|syscall.O_RDWR|syscall.O_CLOEXEC, 0) fd, err := syscall.Open(name, syscall.O_CREAT|syscall.O_RDWR|syscall.O_CLOEXEC, 0)
if err != nil { if err != nil {
t.Fatalf("Open failed: %v", err) t.Fatalf("Open failed: %v", err)
} }
defer syscall.Unlink(name) defer os.RemoveAll(tempDir)
defer syscall.Close(fd) defer syscall.Close(fd)
if err := syscall.Ftruncate(fd, 1<<20); err != nil { if err := syscall.Ftruncate(fd, 1<<20); err != nil {
t.Fatalf("Ftruncate(1<<20) failed: %v", err) t.Fatalf("Ftruncate(1<<20) failed: %v", err)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment