public void String_NoMatch_ConsumesNoInput() { var parser = Chars.String("xyz"); var input = new StringInputReader("---"); var result = parser.Parse(input); Position position = input.GetPosition(); Assert.AreEqual(0, position.Offset); }
public void String_PartialMatch_SetsCorrectPosition() { var parser = Chars.String("xyz"); var input = new StringInputReader("xy-"); var result = parser.Parse(input); Position position = input.GetPosition(); Assert.AreEqual(2, position.Offset, "Offset"); Assert.AreEqual(1, position.Line, "Line"); Assert.AreEqual(3, position.Column, "Column"); }