blob: 8d395fc0db1d248ca70706b81a88edb590eec019 [file] [log] [blame]
// Copyright 2020 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 fs_test
import (
. "io/fs"
"testing"
)
var isValidPathTests = []struct {
name string
ok bool
}{
{".", true},
{"x", true},
{"x/y", true},
{"", false},
{"..", false},
{"/", false},
{"x/", false},
{"/x", false},
{"x/y/", false},
{"/x/y", false},
{"./", false},
{"./x", false},
{"x/.", false},
{"x/./y", false},
{"../", false},
{"../x", false},
{"x/..", false},
{"x/../y", false},
{"x//y", false},
{`x\`, false},
{`x\y`, false},
{`\x`, false},
}
func TestValidPath(t *testing.T) {
for _, tt := range isValidPathTests {
ok := ValidPath(tt.name)
if ok != tt.ok {
t.Errorf("ValidPath(%q) = %v, want %v", tt.name, ok, tt.ok)
}
}
}