public void NextToken_ValidStringLiteral_ShouldReturnStringLiteralToken( string code, string expected, int start, int end) { var lexer = new VBScriptLexer(code); var token = Assert.IsType <StringLiteralToken>(lexer.NextToken()); Assert.Equal(expected, token !.Value); Assert.Equal(start, token.Start); Assert.Equal(end, token.End); }
public void NextToken_InvalidDecIntLiteral_ThrowsException( string code) { var lexer = new VBScriptLexer(code); var ex = Assert.Throws <VBSyntaxErrorException>(() => lexer.NextToken()); Assert.Equal(VBSyntaxErrorCode.ExpectedEndOfStatement, ex.Code); //Assert.Equal(line, ex.Line); //Assert.Equal(pos, ex.Position); }
public void NextToken_Whitespaces_ShouldReturnEofToken(string code) { var lexer = new VBScriptLexer(code); Assert.IsType <EofToken>(lexer.NextToken()); }
public void NextToken_NothingLiteral(string code) { var lexer = new VBScriptLexer(code); Assert.IsType <NothingLiteralToken>(lexer.NextToken()); }