Browse Source

unix: don't check atime in TestUtimesNanoAt

If the underlying filesystem doesn't support atime or was mounted with the
noatime mount option, TestUtimesNanoAt fails when comparing atime:

--- FAIL: TestUtimesNanoAt (0.00s)
	syscall_linux_test.go:144: UtimesNanoAt: wrong atime: {1111 0}
	syscall_linux_test.go:147: UtimesNanoAt: wrong mtime: {3333 0}
FAIL
FAIL	golang.org/x/sys/unix	0.376s

Fix it by dropping the atime comparison, it's enough to verify UtimesNanoAt
working correctly by comparing mtime.

Fixes golang/go#26034

Change-Id: Id868f9d4c6a856a99ae930a46bfe91bd64ca8570
Reviewed-on: https://go-review.googlesource.com/120562
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Tobias Klauser 7 years ago
parent
commit
a200a19cb9
1 changed files with 2 additions and 3 deletions
  1. 2 3
      unix/syscall_linux_test.go

+ 2 - 3
unix/syscall_linux_test.go

@@ -140,9 +140,8 @@ func TestUtimesNanoAt(t *testing.T) {
 	if err != nil {
 		t.Fatalf("Lstat: %v", err)
 	}
-	if st.Atim != ts[0] {
-		t.Errorf("UtimesNanoAt: wrong atime: %v", st.Atim)
-	}
+
+	// Only check Mtim, Atim might not be supported by the underlying filesystem
 	if st.Mtim != ts[1] {
 		t.Errorf("UtimesNanoAt: wrong mtime: %v", st.Mtim)
 	}