diff options
Diffstat (limited to 'libgo/go/os/executable_test.go')
-rw-r--r-- | libgo/go/os/executable_test.go | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libgo/go/os/executable_test.go b/libgo/go/os/executable_test.go index a4d8909..7800844 100644 --- a/libgo/go/os/executable_test.go +++ b/libgo/go/os/executable_test.go @@ -20,10 +20,6 @@ func TestExecutable(t *testing.T) { testenv.MustHaveExec(t) // will also execlude nacl, which doesn't support Executable anyway ep, err := os.Executable() if err != nil { - switch goos := runtime.GOOS; goos { - case "openbsd": // procfs is not mounted by default - t.Skipf("Executable failed on %s: %v, expected", goos, err) - } t.Fatalf("Executable failed: %v", err) } // we want fn to be of the form "dir/prog" @@ -32,6 +28,7 @@ func TestExecutable(t *testing.T) { if err != nil { t.Fatalf("filepath.Rel: %v", err) } + cmd := &osexec.Cmd{} // make child start with a relative program path cmd.Dir = dir @@ -39,6 +36,10 @@ func TestExecutable(t *testing.T) { // forge argv[0] for child, so that we can verify we could correctly // get real path of the executable without influenced by argv[0]. cmd.Args = []string{"-", "-test.run=XXXX"} + if runtime.GOOS == "openbsd" { + // OpenBSD relies on argv[0] + cmd.Args[0] = fn + } cmd.Env = append(os.Environ(), fmt.Sprintf("%s=1", executable_EnvVar)) out, err := cmd.CombinedOutput() if err != nil { |