public Object newGreaterThan(int line, int column, Object left, Object right) { GreaterThanNode node = new GreaterThanNode(); node.setLeft((Node) left); node.setRight((Node) right); setPosition(node, line, column); return node; }
@Test public void testDeepEvaluation() throws Exception { AExpression child1 = new NumberNode(new BigDecimal("10")); AExpression child2 = new NumberNode(new BigDecimal("20")); AExpression child3 = new NumberNode(new BigDecimal("35")); AExpression child4 = new NumberNode(new BigDecimal("7")); AddNode add = new AddNode(child1, child2); // 30 SubtractNode sub = new SubtractNode(child3, child4); // 28 GreaterThanNode gt = new GreaterThanNode(add, sub); assertEquals(true, gt.evaluate(null).getValue()); }