From fcce1e13814a02d8358eae9a40e33a7e6f2b5400 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Fri, 13 Jun 2025 15:42:08 -0700 Subject: Unifying Structs and Arrays --- .../java/com/seaofnodes/simple/Chapter04Test.java | 131 --------------------- 1 file changed, 131 deletions(-) delete mode 100644 src/test/java/com/seaofnodes/simple/Chapter04Test.java (limited to 'src/test/java/com/seaofnodes/simple/Chapter04Test.java') diff --git a/src/test/java/com/seaofnodes/simple/Chapter04Test.java b/src/test/java/com/seaofnodes/simple/Chapter04Test.java deleted file mode 100644 index 1361d8b6..00000000 --- a/src/test/java/com/seaofnodes/simple/Chapter04Test.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.seaofnodes.simple; - -import com.seaofnodes.simple.codegen.CodeGen; -import com.seaofnodes.simple.node.*; -import com.seaofnodes.simple.type.TypeInteger; -import org.junit.Test; -import org.junit.Ignore; - -import static org.junit.Assert.*; - -public class Chapter04Test { - - @Test - public void testPeephole() { - CodeGen code = new CodeGen("return 1+arg+2; "); - code.parse(); - assertEquals("return (arg+3);", code.print()); - } - - @Test - public void testPeephole2() { - CodeGen code = new CodeGen("return (1+arg)+2;"); - code.parse(); - assertEquals("return (arg+3);", code.print()); - } - - @Test - public void testAdd0() { - CodeGen code = new CodeGen("return 0+arg;"); - code.parse(); - assertEquals("return arg;", code.print()); - } - - @Test - public void testAddAddMul() { - CodeGen code = new CodeGen("return arg+0+arg;"); - code.parse(); - assertEquals("return (arg<<1);", code.print()); - } - - @Test - public void testPeephole3() { - CodeGen code = new CodeGen("return 1+arg+2+arg+3; "); - code.parse(); - assertEquals("return ((arg<<1)+6);", code.print()); - } - - @Test - public void testMul1() { - CodeGen code = new CodeGen("return 1*arg;"); - code.parse(); - assertEquals("return arg;", code.print()); - } - - @Test - public void testVarArg() { - CodeGen code = new CodeGen("return arg; "); - code.parse(); - assertTrue(code.ctrl() instanceof FunNode); - assertTrue(code.expr() instanceof ParmNode); - } - - // Adding functions means `main` does not constant fold the incoming arg value - @Ignore @Test - public void testConstantArg() { - CodeGen code = new CodeGen("return arg; ", TypeInteger.constant(2), 123L, true).parse(); - assertEquals("return 2;", code.expr().in(1).toString()); - } - - @Test - public void testCompEq() { - CodeGen code = new CodeGen("return 3==3; "); - code.parse(); - assertEquals("return 1;", code.print()); - } - - @Test - public void testCompEq2() { - CodeGen code = new CodeGen("return 3==4; "); - code.parse(); - assertEquals("return 0;", code.print()); - } - - @Test - public void testCompNEq() { - CodeGen code = new CodeGen("return 3!=3; "); - code.parse(); - assertEquals("return 0;", code.print()); - } - - @Test - public void testCompNEq2() { - CodeGen code = new CodeGen("return 3!=4; "); - code.parse(); - assertEquals("return 1;", code.print()); - } - - @Test - public void testBug1() { - CodeGen code = new CodeGen("int a=arg+1; int !b=a; b=1; return a+2; "); - code.parse(); - assertEquals("return (arg+3);", code.print()); - } - - @Test - public void testBug2() { - CodeGen code = new CodeGen("int !a=arg+1; a=a; return a; "); - code.parse(); - assertEquals("return (arg+1);", code.print()); - } - - @Test - public void testBug3() { - try { new CodeGen("inta=1; return a;").parse(); fail(); } - catch( RuntimeException e ) { assertEquals("Undefined name 'inta'",e.getMessage()); } - } - - @Test - public void testBug4() { - CodeGen code = new CodeGen("return -arg;"); - code.parse(); - assertEquals("return (-arg);", code.print()); - } - - @Test - public void testBug5() { - CodeGen code = new CodeGen("return arg--2;"); - code.parse(); - assertEquals("return (arg--2);", code.print()); - } -} -- cgit v1.2.3