// 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\`, true}, {`x\y`, true}, {`x:y`, true}, {`\x`, true}, } 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) } } }