forked from TrueCloudLab/restic
filter: explicitly test separate ListWithChild function
This commit is contained in:
parent
bcc3bddcf4
commit
54a124de3b
1 changed files with 28 additions and 15 deletions
|
@ -240,21 +240,22 @@ func ExampleMatch_wildcards() {
|
||||||
}
|
}
|
||||||
|
|
||||||
var filterListTests = []struct {
|
var filterListTests = []struct {
|
||||||
patterns []string
|
patterns []string
|
||||||
path string
|
path string
|
||||||
match bool
|
match bool
|
||||||
|
childMatch bool
|
||||||
}{
|
}{
|
||||||
{[]string{}, "/foo/bar/test.go", false},
|
{[]string{}, "/foo/bar/test.go", false, false},
|
||||||
{[]string{"*.go"}, "/foo/bar/test.go", true},
|
{[]string{"*.go"}, "/foo/bar/test.go", true, true},
|
||||||
{[]string{"*.c"}, "/foo/bar/test.go", false},
|
{[]string{"*.c"}, "/foo/bar/test.go", false, true},
|
||||||
{[]string{"*.go", "*.c"}, "/foo/bar/test.go", true},
|
{[]string{"*.go", "*.c"}, "/foo/bar/test.go", true, true},
|
||||||
{[]string{"*"}, "/foo/bar/test.go", true},
|
{[]string{"*"}, "/foo/bar/test.go", true, true},
|
||||||
{[]string{"x"}, "/foo/bar/test.go", false},
|
{[]string{"x"}, "/foo/bar/test.go", false, true},
|
||||||
{[]string{"?"}, "/foo/bar/test.go", false},
|
{[]string{"?"}, "/foo/bar/test.go", false, true},
|
||||||
{[]string{"?", "x"}, "/foo/bar/x", true},
|
{[]string{"?", "x"}, "/foo/bar/x", true, true},
|
||||||
{[]string{"/*/*/bar/test.*"}, "/foo/bar/test.go", false},
|
{[]string{"/*/*/bar/test.*"}, "/foo/bar/test.go", false, false},
|
||||||
{[]string{"/*/*/bar/test.*", "*.go"}, "/foo/bar/test.go", true},
|
{[]string{"/*/*/bar/test.*", "*.go"}, "/foo/bar/test.go", true, true},
|
||||||
{[]string{"", "*.c"}, "/foo/bar/test.go", false},
|
{[]string{"", "*.c"}, "/foo/bar/test.go", false, true},
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestList(t *testing.T) {
|
func TestList(t *testing.T) {
|
||||||
|
@ -268,9 +269,21 @@ func TestList(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if match != test.match {
|
if match != test.match {
|
||||||
t.Errorf("test %d: filter.MatchList(%q, %q): expected %v, got %v",
|
t.Errorf("test %d: filter.List(%q, %q): expected %v, got %v",
|
||||||
i, test.patterns, test.path, test.match, match)
|
i, test.patterns, test.path, test.match, match)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
match, childMatch, err := filter.ListWithChild(patterns, test.path)
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("test %d failed: expected no error for patterns %q, but error returned: %v",
|
||||||
|
i, test.patterns, err)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if match != test.match || childMatch != test.childMatch {
|
||||||
|
t.Errorf("test %d: filter.ListWithChild(%q, %q): expected %v, %v, got %v, %v",
|
||||||
|
i, test.patterns, test.path, test.match, test.childMatch, match, childMatch)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue