Package com.googlecode.aviator.lexer

Examples of com.googlecode.aviator.lexer.ExpressionLexer


    }


    @Test(expected = ExpressionSyntaxErrorException.class)
    public void testTernaryWithIllegalParen2() {
        this.parser = new ExpressionParser(new ExpressionLexer("3==1?(100-3+1)):(false?9:0)"), codeGenerator);
        this.parser.parse();
    }
View Full Code Here


    }


    @Test
    public void testParseGroup() {
        this.parser = new ExpressionParser(new ExpressionLexer("'3.45'=~/(\\d+)\\.(\\d+)/ ? $2 : $0 "), codeGenerator);
        this.parser.parse();
        assertEquals("3.45 (\\d+)\\.(\\d+) =~ $2 $0 ?:", this.codeGenerator.getPostFixExpression());
    }
View Full Code Here


    @Test(expected = ExpressionSyntaxErrorException.class)
    public void testParseIllegalGroup1() {
        this.parser =
                new ExpressionParser(new ExpressionLexer("'3.45'=~/(\\d+)\\.(\\d+)/ ? $2.3 : $0 "), codeGenerator);
        this.parser.parse();

    }
View Full Code Here

    }


    @Test
    public void testParseFunction() {
        this.parser = new ExpressionParser(new ExpressionLexer("string.contains(\"hello\",'fuck')"), codeGenerator);
        this.parser.parse();

        assertEquals("hello fuck method<invoked>", codeGenerator.getPostFixExpression());

    }
View Full Code Here

    }


    @Test
    public void testParseSeqFunction() {
        this.parser = new ExpressionParser(new ExpressionLexer("map(list,println)"), codeGenerator);
        this.parser.parse();

        assertEquals("list println method<invoked>", codeGenerator.getPostFixExpression());

    }
View Full Code Here

    }


    @Test
    public void testParseReduceFunction() {
        this.parser = new ExpressionParser(new ExpressionLexer("reduce(list,-,0)"), codeGenerator);
        this.parser.parse();

        assertEquals("list - 0 method<invoked>", codeGenerator.getPostFixExpression());

    }
View Full Code Here


    @Test
    public void testParseFunctionNested() {
        this.parser =
                new ExpressionParser(new ExpressionLexer(
                    "string.contains(string.substring(\"hello\",3,4),string.substring(\"hello\",1)) && 3>2"),
                    codeGenerator);
        this.parser.parse();

        assertEquals("hello 3 4 method<invoked> hello 1 method<invoked> method<invoked> 3 2 > &&", codeGenerator
View Full Code Here

    }


    @Test
    public void testArrayAccess() {
        this.parser = new ExpressionParser(new ExpressionLexer("a[2]"), codeGenerator);
        this.parser.parse();

        assertEquals("a 2 []", codeGenerator.getPostFixExpression());
    }
View Full Code Here

    }


    @Test
    public void testArrayAccess_IndexIsExp() {
        this.parser = new ExpressionParser(new ExpressionLexer("a[b+c/2]"), codeGenerator);
        this.parser.parse();

        assertEquals("a b c 2 / + []", codeGenerator.getPostFixExpression());
    }
View Full Code Here

    }


    @Test
    public void testArrayAccessNested1() {
        this.parser = new ExpressionParser(new ExpressionLexer("a[c[3]]"), codeGenerator);
        this.parser.parse();

        assertEquals("a c 3 [] []", codeGenerator.getPostFixExpression());

    }
View Full Code Here

TOP

Related Classes of com.googlecode.aviator.lexer.ExpressionLexer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.