From 3cbe7ea7e9de8547699537e78b76cfbc119e485d Mon Sep 17 00:00:00 2001 From: Mikio Hara Date: Mon, 13 Apr 2015 12:11:00 +0900 Subject: [PATCH] os: fix TestProgWideChdir on darwin On darwin, /tmp and /var directories are usually linked to /private. % cd $TMPDIR; pwd -L /var/.../T % pwd -P /private/var/.../T Change-Id: I277ff2d096344d9a80e6004a83e9fc3e1716348c Reviewed-on: https://go-review.googlesource.com/8842 Reviewed-by: David Crawshaw --- src/os/os_test.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/os/os_test.go b/src/os/os_test.go index f65845af86..b1fc998a90 100644 --- a/src/os/os_test.go +++ b/src/os/os_test.go @@ -1060,7 +1060,8 @@ func TestProgWideChdir(t *testing.T) { <-c pwd, err := Getwd() if err != nil { - t.Fatal("Getwd: %v", err) + t.Errorf("Getwd on goroutine %d: %v", i, err) + return } cpwd <- pwd }(i) @@ -1082,11 +1083,17 @@ func TestProgWideChdir(t *testing.T) { if err := Chdir(d); err != nil { t.Fatal("Chdir: %v", err) } + // OS X sets TMPDIR to a symbolic link. + // So we resolve our working directory again before the test. + d, err = Getwd() + if err != nil { + t.Fatal("Getwd: %v", err) + } close(c) for i := 0; i < N; i++ { pwd := <-cpwd if pwd != d { - t.Errorf("Getwd returned %q want %q", pwd, d) + t.Errorf("Getwd returned %q; want %q", pwd, d) } } } -- 2.48.1