public void TestResetOnANTLRStringStream() { ANTLRStringStream stream = new ANTLRStringStream("One\r\nTwo"); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O stream.Consume(); // n Assert.AreEqual('e', stream.LA(1)); Assert.AreEqual(2, stream.Index()); stream.Reset(); Assert.AreEqual('O', stream.LA(1)); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O Assert.AreEqual('n', stream.LA(1)); Assert.AreEqual(1, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // n Assert.AreEqual('e', stream.LA(1)); Assert.AreEqual(2, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // e }
public void TestSizeOnEmptyANTLRStringStream() { ANTLRStringStream s1 = new ANTLRStringStream(""); Assert.AreEqual(0, s1.Size()); Assert.AreEqual(0, s1.Index()); }
public void TestConsumeOnANTLRStringStream() { ANTLRStringStream stream = new ANTLRStringStream("One\r\nTwo"); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O Assert.AreEqual(1, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // n Assert.AreEqual(2, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // e Assert.AreEqual(3, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // \r Assert.AreEqual(4, stream.Index()); Assert.AreEqual(4, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // \n Assert.AreEqual(5, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // T Assert.AreEqual(6, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // w Assert.AreEqual(7, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // o Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // EOF Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // EOF Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); }
int IIntStream.Index() { return(stream.Index()); }
public void TestResetOnANTLRStringStream() { ANTLRStringStream stream = new ANTLRStringStream("One\r\nTwo"); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O stream.Consume(); // n Assert.AreEqual('e', stream.LA(1)); Assert.AreEqual(2, stream.Index()); stream.Reset(); Assert.AreEqual('O', stream.LA(1)); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O Assert.AreEqual('n', stream.LA(1)); Assert.AreEqual(1, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // n Assert.AreEqual('e', stream.LA(1)); Assert.AreEqual(2, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // e }
public void TestConsumeOnANTLRStringStream() { ANTLRStringStream stream = new ANTLRStringStream("One\r\nTwo"); Assert.AreEqual(0, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // O Assert.AreEqual(1, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // n Assert.AreEqual(2, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // e Assert.AreEqual(3, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // \r Assert.AreEqual(4, stream.Index()); Assert.AreEqual(4, stream.CharPositionInLine); Assert.AreEqual(1, stream.Line); stream.Consume(); // \n Assert.AreEqual(5, stream.Index()); Assert.AreEqual(0, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // T Assert.AreEqual(6, stream.Index()); Assert.AreEqual(1, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // w Assert.AreEqual(7, stream.Index()); Assert.AreEqual(2, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // o Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // EOF Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); stream.Consume(); // EOF Assert.AreEqual(8, stream.Index()); Assert.AreEqual(3, stream.CharPositionInLine); Assert.AreEqual(2, stream.Line); }
public void TestSizeOnEmptyANTLRStringStream() { ANTLRStringStream s1 = new ANTLRStringStream(""); Assert.AreEqual(0, s1.Size()); Assert.AreEqual(0, s1.Index()); }