public void LexLeftMeta_AdvancesPosByTwo() { var lexer = new Lexer("{{ name }}"); LexFunctions.LexLeftMeta(lexer); Assert.AreEqual(2, lexer.Pos); }
public void LexLeftMeta_AdvancesStartToPos() { var lexer = new Lexer("{{ name }}"); LexFunctions.LexLeftMeta(lexer); Assert.AreEqual(lexer.Pos, lexer.Start); }
public void LexLeftMeta_ReturnsLexInsideAction() { var lexer = new Lexer("{{ name }}"); var nextLexFunction = LexFunctions.LexLeftMeta(lexer); Assert.AreEqual(LexFunctions.LexInsideAction, nextLexFunction); }
public void LexLeftMeta_EmitsLeftMeta() { var lexer = new Lexer("{{ name }}"); LexFunctions.LexLeftMeta(lexer); var tokens = lexer.Tokens.ToArray(); Assert.AreEqual(1, tokens.Length); Assert.AreEqual(Lexeme.LeftMeta, tokens[0].Type); Assert.AreEqual("{{", tokens[0].Value); }