OSDN Git Service

Merge remote-tracking branch 'gnu/gcc-4_7-branch' into rework
[pf3gnuchains/gcc-fork.git] / libgo / go / os / exec / lp_test.go
diff --git a/libgo/go/os/exec/lp_test.go b/libgo/go/os/exec/lp_test.go
new file mode 100644 (file)
index 0000000..77d8e84
--- /dev/null
@@ -0,0 +1,33 @@
+// Copyright 2011 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 exec
+
+import (
+       "testing"
+)
+
+var nonExistentPaths = []string{
+       "some-non-existent-path",
+       "non-existent-path/slashed",
+}
+
+func TestLookPathNotFound(t *testing.T) {
+       for _, name := range nonExistentPaths {
+               path, err := LookPath(name)
+               if err == nil {
+                       t.Fatalf("LookPath found %q in $PATH", name)
+               }
+               if path != "" {
+                       t.Fatalf("LookPath path == %q when err != nil", path)
+               }
+               perr, ok := err.(*Error)
+               if !ok {
+                       t.Fatal("LookPath error is not an exec.Error")
+               }
+               if perr.Name != name {
+                       t.Fatalf("want Error name %q, got %q", name, perr.Name)
+               }
+       }
+}