diff options
author | Brad Fitzpatrick <bradfitz@golang.org> | 2019-12-06 16:20:50 +0000 |
---|---|---|
committer | Brad Fitzpatrick <bradfitz@golang.org> | 2019-12-06 18:04:42 +0000 |
commit | a6c8fac78194bf84eb75c845f2a80646211877c5 (patch) | |
tree | bb8b291e07fd5a2073e9bc46e65907c2ec19ccd9 | |
parent | 69614c0d0e05787c8203bdc364c3293e1cf5094a (diff) | |
download | go-a6c8fac78194bf84eb75c845f2a80646211877c5.tar.gz go-a6c8fac78194bf84eb75c845f2a80646211877c5.zip |
os: skip a new failing test on Windows
This test was recently added in CL 209961.
Apparently Windows can't seek a directory filehandle?
And move the test from test/fixedbugs (which is mostly for compiler bugs) to
an os package test.
Updates #36019
Change-Id: I626b69b0294471014901d0ccfeefe5e2c7651788
Reviewed-on: https://go-review.googlesource.com/c/go/+/210283
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
-rw-r--r-- | src/os/os_test.go | 42 | ||||
-rw-r--r-- | test/fixedbugs/issue35767.go | 51 |
2 files changed, 42 insertions, 51 deletions
diff --git a/src/os/os_test.go b/src/os/os_test.go index 02c80f3d81..278c19e44b 100644 --- a/src/os/os_test.go +++ b/src/os/os_test.go @@ -2406,3 +2406,45 @@ func TestUserHomeDir(t *testing.T) { t.Fatalf("dir %s is not directory; type = %v", dir, fi.Mode()) } } + +func TestDirSeek(t *testing.T) { + if runtime.GOOS == "windows" { + testenv.SkipFlaky(t, 36019) + } + wd, err := Getwd() + if err != nil { + t.Fatal(err) + } + f, err := Open(wd) + if err != nil { + t.Fatal(err) + } + dirnames1, err := f.Readdirnames(0) + if err != nil { + t.Fatal(err) + } + + ret, err := f.Seek(0, 0) + if err != nil { + t.Fatal(err) + } + if ret != 0 { + t.Fatalf("seek result not zero: %d", ret) + } + + dirnames2, err := f.Readdirnames(0) + if err != nil { + t.Fatal(err) + return + } + + if len(dirnames1) != len(dirnames2) { + t.Fatalf("listings have different lengths: %d and %d\n", len(dirnames1), len(dirnames2)) + } + for i, n1 := range dirnames1 { + n2 := dirnames2[i] + if n1 != n2 { + t.Fatalf("different name i=%d n1=%s n2=%s\n", i, n1, n2) + } + } +} diff --git a/test/fixedbugs/issue35767.go b/test/fixedbugs/issue35767.go deleted file mode 100644 index b930faa127..0000000000 --- a/test/fixedbugs/issue35767.go +++ /dev/null @@ -1,51 +0,0 @@ -// run - -// Copyright 2019 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package main - -import ( - "log" - "os" -) - -func main() { - wd, err := os.Getwd() - if err != nil { - log.Fatal(err) - } - f, err := os.Open(wd) - if err != nil { - log.Fatal(err) - } - dirnames1, err := f.Readdirnames(0) - if err != nil { - log.Fatal(err) - } - - ret, err := f.Seek(0, 0) - if err != nil { - log.Fatal(err) - } - if ret != 0 { - log.Fatalf("seek result not zero: %d", ret) - } - - dirnames2, err := f.Readdirnames(0) - if err != nil { - log.Fatal(err) - return - } - - if len(dirnames1) != len(dirnames2) { - log.Fatalf("listings have different lengths: %d and %d\n", len(dirnames1), len(dirnames2)) - } - for i, n1 := range dirnames1 { - n2 := dirnames2[i] - if n1 != n2 { - log.Fatalf("different name i=%d n1=%s n2=%s\n", i, n1, n2) - } - } -} |