public void TestManySuccessivelyChekingl() { // Arrange var symbol1 = 'g'; var symbol2 = 'b'; var symbol3 = 'i'; var rule1 = new SymbolRule(symbol: symbol1); var rule2 = new SymbolRule(symbol: symbol2); var rule3 = new SymbolRule(symbol: symbol3); var stream = new MemoryStream().FromString($"{symbol1}{symbol2}/{symbol3}"); // Act var rule1Result = rule1.Check(stream); var rule2Result = rule2.Check(stream); var rule3Result = rule3.Check(stream); // Assert Assert.IsTrue(rule1Result, message: "rule1Result is false"); Assert.IsTrue(rule2Result, message: "rule2Result is false"); Assert.IsFalse(rule3Result, message: "rule4Result is false"); }
public void TestRighSringSavedInFaledCase() { // Arrange var symbol = 'a'; var rule = new SymbolRule(symbol: symbol); var stream = new MemoryStream().FromString($"{symbol + 1}"); // Act rule.Check(stream); // Assert Assert.AreEqual(string.Empty, rule.ChekedString); }
public void TestFailChekingOneSymbol() { //arrange var symbol = 'd'; var rule = new SymbolRule(symbol: symbol); var stream = new MemoryStream().FromString((symbol + 1).ToString()); //act var isCheckedSuccess = rule.Check(stream); //assert Assert.IsFalse(isCheckedSuccess); }
public void TestStreamPositionOffsetCorrectlyWithIncorrectSymbol() { // Arrange var symbol = 'g'; var rule = new SymbolRule(symbol: symbol); var stream = new MemoryStream().FromString("example test string that so biger then needed"); var startPosition = stream.Position; // Act rule.Check(stream); // Assert Assert.AreEqual(stream.Position, startPosition); }
public void TestSuccessChekingSpecialSymbol() { // Arrange var symbol = '\r'; var rule = new SymbolRule(symbol: symbol); var stream = new MemoryStream().FromString("\rtnmp"); // Act var startPos = stream.Position; rule.Check(stream); // Assert Assert.AreEqual(startPos + 1, stream.Position); }