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); }