public void TestParseLineValidPath(string line, bool expectedIsRecursive, bool canBeFolder) { var result = parser.ParseLine(line); Assert.IsTrue(result is FileRule); Assert.AreEqual(CheckType.MustExist, result.UnitTestPeek.CheckType); Assert.AreEqual(expectedIsRecursive, result.UnitTestPeek.IsRecursive); result = parser.ParseLine("!" + line); Assert.IsTrue(result is FileRule); Assert.AreEqual(CheckType.MustNotExist, result.UnitTestPeek.CheckType); Assert.AreEqual(expectedIsRecursive, result.UnitTestPeek.IsRecursive); if (canBeFolder) { result = parser.ParseLine(line + "/"); Assert.IsTrue(result is FolderRule); Assert.AreEqual(CheckType.MustExist, result.UnitTestPeek.CheckType); Assert.AreEqual(expectedIsRecursive, result.UnitTestPeek.IsRecursive); result = parser.ParseLine("!" + line + "/"); Assert.IsTrue(result is FolderRule); Assert.AreEqual(CheckType.MustNotExist, result.UnitTestPeek.CheckType); Assert.AreEqual(expectedIsRecursive, result.UnitTestPeek.IsRecursive); } }
public void TestFileProcessing(string folderPattern, bool expectedIsValid) { var rule = fileSystemRuleParser.ParseLine(folderPattern); Assert.IsTrue(rule is FileRule); var validationResult = rule.Validate(repositoryInfo); Assert.AreEqual(expectedIsValid, validationResult.IsValid); rule = fileSystemRuleParser.ParseLine("!" + folderPattern); Assert.IsTrue(rule is FileRule); validationResult = rule.Validate(repositoryInfo); Assert.AreEqual(expectedIsValid, !validationResult.IsValid); }