https://go-review.googlesource.com/#/c/27580 added the test.
However the test use syscall.ELOOP which is not defined on plan9.
Move test code from "os_test.go" to "os_windows_test.go" to prevent
build error.
Change-Id: Ie7f05bfb9ab229e06a8e82a4b3b8a7ca82d4663b
Reviewed-on: https://go-review.googlesource.com/27833
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: David du Colombier <0intro@gmail.com>
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
close(hold) // let workers race to remove root
wg.Wait()
}
-
-func TestStatSymlinkLoop(t *testing.T) {
- testenv.MustHaveSymlink(t)
-
- defer chtmpdir(t)()
-
- err := Symlink("x", "y")
- if err != nil {
- t.Fatal(err)
- }
- defer Remove("y")
-
- err = Symlink("y", "x")
- if err != nil {
- t.Fatal(err)
- }
- defer Remove("x")
-
- _, err = Stat("x")
- if perr, ok := err.(*PathError); !ok || perr.Err != syscall.ELOOP {
- t.Errorf("expected *PathError with ELOOP, got %T: %v\n", err, err)
- }
-}
package os_test
import (
+ "internal/testenv"
"io/ioutil"
"os"
osexec "os/exec"
t.Fatal(err)
}
}
+
+func TestStatSymlinkLoop(t *testing.T) {
+ testenv.MustHaveSymlink(t)
+
+ defer chtmpdir(t)()
+
+ err := os.Symlink("x", "y")
+ if err != nil {
+ t.Fatal(err)
+ }
+ defer os.Remove("y")
+
+ err = os.Symlink("y", "x")
+ if err != nil {
+ t.Fatal(err)
+ }
+ defer os.Remove("x")
+
+ _, err = os.Stat("x")
+ if perr, ok := err.(*os.PathError); !ok || perr.Err != syscall.ELOOP {
+ t.Errorf("expected *PathError with ELOOP, got %T: %v\n", err, err)
+ }
+}