public void testConcatNumberString() { Plus plus = new Plus(new Number(2), new Text("a")); plus.type = TextType.instance; ExpressionVisitor expressionVisitor = new ExpressionVisitor(new SymbolTable()); Expression expression = expressionVisitor.visit(plus); assertTrue(expression instanceof Text); Text text = (Text) expression; assertEquals("2a", text.text); }
public void testConcatCantOptimize() { IdExpression id = new IdExpression("a"); id.type = new IdType("A"); Text text = new Text("a"); text.type = TextType.instance; Plus plus = new Plus(text, id); plus.type = TextType.instance; ExpressionVisitor expressionVisitor = new ExpressionVisitor(new SymbolTable()); Expression expression = expressionVisitor.visit(plus); assertTrue(expression instanceof Concat); Concat concat = (Concat) expression; assertEquals(text, concat.left); assertEquals(id, concat.right); }
public final void testZeroPlusExp() { Plus p = new Plus(); p.type = IntegerType.instance; operationWithZero(p, null, true, true); }