1 package uk.co.badgersinfoil.metaas;
2
3 import java.io.StringWriter;
4 import uk.co.badgersinfoil.metaas.dom.ASBinaryExpression;
5 import uk.co.badgersinfoil.metaas.dom.Expression;
6 import uk.co.badgersinfoil.metaas.impl.AS3FragmentParser;
7 import uk.co.badgersinfoil.metaas.impl.ASTExpression;
8 import uk.co.badgersinfoil.metaas.impl.ASTPrinter;
9 import uk.co.badgersinfoil.metaas.impl.antlr.LinkedListTree;
10 import junit.framework.TestCase;
11
12 public class OperatorPrecedenceTests extends TestCase {
13 private Expression left;
14 private Expression right;
15 private ActionScriptFactory fact = new ActionScriptFactory();
16 private ASBinaryExpression expr;
17
18 public void setUp() {
19 right = fact.newIntegerLiteral(2);
20 expr = null;
21 }
22
23 public void tearDown() {
24 StringWriter buff = new StringWriter();
25 LinkedListTree ast = ((ASTExpression)expr).getAST();
26 new ASTPrinter(buff).print(ast);
27 LinkedListTree parsed = AS3FragmentParser.parseExpr(buff.toString());
28 CodeMirror.assertASTMatch(ast, parsed);
29 }
30
31 public void testBasic() {
32 left = fact.newAddExpression(fact.newIntegerLiteral(1), fact.newIntegerLiteral(1));
33
34
35
36
37 expr = fact.newMultiplyExpression(left, right);
38 }
39 }