public void MultiGlobCanStillMatchBangs(string pattern, string example) { var glob = MultiGlob.Parse(pattern);; var actual = glob.Match(example); actual.HasMatches.Should().BeTrue(); }
public void MultiGlobWorkOnStrings(string pattern, int expectedCount, params string[] missingItems) { //Given var glob = MultiGlob.Parse(pattern); //When var actual = glob.Match(Source); //Then Assert.Equal(expectedCount > 0, actual.HasMatches); Assert.Equal(expectedCount, actual.Files.Count()); var delta = Source.Except(missingItems); Assert.Equal(delta, actual.Files.Select(x => x.Path)); }
public void MultiGlobHasAnIFileSystemExtension() { var glob = MultiGlob.Parse("**|!donkey"); TestFiles.AddFile("hello.txt", null); TestFiles.AddFile("donkey", null); TestFiles.AddFile("abc/hello", null); TestFiles.AddFile("abc/donkey", null); var results = glob.GetResultsInFullPath(TestFiles, Helpers.DefaultTestPath); results.Should().BeEquivalentTo(new string[] { TestFiles.Path.GetFullPath("hello.txt"), TestFiles.Path.GetFullPath("abc/hello"), TestFiles.Path.GetFullPath("abc/donkey"), }); }
public void MultiGlobProvidesOriginalPattern() { var glob = MultiGlob.Parse("[!]hello|!donkey"); glob.OriginalPattern.Should().Be("[!]hello|!donkey"); }