diff --git a/utils.go b/utils.go index c3ff632..f48f29a 100644 --- a/utils.go +++ b/utils.go @@ -213,23 +213,23 @@ func init() { sb := &strings.Builder{} // Start with group 1 - those that started with `^` - sb.WriteString("(?:^(?:") + sb.WriteString("(?:^(?:(?:") sb.WriteString(caretStrings[0]) for _, matcher := range caretStrings[1:] { sb.WriteString(")|(?:") sb.WriteString(matcher) } - sb.WriteString("))") + sb.WriteString(")))") sb.WriteString("|") // Now add group 2 - those that started with `(^|/)` - sb.WriteString("(?:(?:^|/)(?:") + sb.WriteString("(?:(?:^|/)(?:(?:") sb.WriteString(caretSegmentStrings[0]) for _, matcher := range caretSegmentStrings[1:] { sb.WriteString(")|(?:") sb.WriteString(matcher) } - sb.WriteString("))") + sb.WriteString(")))") sb.WriteString("|") // Finally add the rest diff --git a/utils_test.go b/utils_test.go index 56fc4c9..fd031ab 100644 --- a/utils_test.go +++ b/utils_test.go @@ -17,6 +17,7 @@ func TestIsVendor(t *testing.T) { expected bool }{ {"cache/", true}, + {"something_cache/", false}, {"random/cache/", true}, {"cache", false}, {"dependencies/", true}, @@ -27,6 +28,7 @@ func TestIsVendor(t *testing.T) { {"random/dist/", true}, {"random/dist", false}, {"deps/", true}, + {"foodeps/", false}, {"configure", true}, {"a/configure", true}, {"config.guess", true}, @@ -43,6 +45,7 @@ func TestIsVendor(t *testing.T) { {"foo/bar/MochiKit.js", true}, {"foo/bar/dojo.js", true}, {"foo/env/whatever", true}, + {"some/python/venv/", false}, {"foo/.imageset/bar", true}, {"Vagrantfile", true}, }