diff --git a/src/test/java/ByteCode/CompareByteCodeBehaviour.java b/src/test/java/ByteCode/CompareByteCodeBehaviour.java index 09d39b8..c5584db 100644 --- a/src/test/java/ByteCode/CompareByteCodeBehaviour.java +++ b/src/test/java/ByteCode/CompareByteCodeBehaviour.java @@ -76,10 +76,9 @@ public class CompareByteCodeBehaviour { Constructor constructor2 = constructors2[0]; constructor1.setAccessible(true); constructor2.setAccessible(true); - Object[] constructorArgs1 = getDefaultArguments(constructor1.getParameters()); - Object[] constructorArgs2 = getDefaultArguments(constructor2.getParameters()); - Object obj1 = constructor1.newInstance(constructorArgs1); - Object obj2 = constructor2.newInstance(constructorArgs2); + Object[] constructorArgs = getDefaultArguments(constructor1.getParameters()); + Object obj1 = constructor1.newInstance(constructorArgs); + Object obj2 = constructor2.newInstance(constructorArgs); // Get methods Method[] methods1 = new Method[this.methodArray1.size()]; diff --git a/src/test/java/ByteCode/CompareByteCodeSyntax.java b/src/test/java/ByteCode/CompareByteCodeSyntax.java index 2915f23..dced75b 100644 --- a/src/test/java/ByteCode/CompareByteCodeSyntax.java +++ b/src/test/java/ByteCode/CompareByteCodeSyntax.java @@ -77,10 +77,6 @@ public class CompareByteCodeSyntax { System.out.println("Annotations do not match for methods " + method1.getName() + " and " + method2.getName()); return false; } - if (method1.getModifiers() != method2.getModifiers()) { - System.out.println("Modifiers do not match for methods " + method1.getName() + " and " + method2.getName()); - return false; - } return true; } diff --git a/src/test/java/ByteCode/TestAll.java b/src/test/java/ByteCode/TestAll.java index 3f0eb36..24a70cf 100644 --- a/src/test/java/ByteCode/TestAll.java +++ b/src/test/java/ByteCode/TestAll.java @@ -38,8 +38,8 @@ public class TestAll { Program ast = FakultaetASTTyped.getProgram(); String className = "Fakultaet"; String javacode = "src/test/resources/basicClasses/Fakultaet.java"; - byteCodeTester.testByteCodeFromTypedAst(classPath, ast ,className); - //byteCodeTester.testClassFileFromScratch(classPath, javacode, className); + //byteCodeTester.testByteCodeFromTypedAst(classPath, ast ,className); + byteCodeTester.testClassFileFromScratch(classPath, javacode, className); } @Test @@ -58,7 +58,7 @@ public class TestAll { Program ast = CharArgumentASTTyped.getProgram(); String className = "CharArgument"; String javacode = "src/test/resources/SimpleTests/CharArgument.java"; - byteCodeTester.testByteCodeFromTypedAst(classPath, ast ,className); + //byteCodeTester.testByteCodeFromTypedAst(classPath, ast ,className); byteCodeTester.testClassFileFromScratch(classPath, javacode, className); } diff --git a/src/test/resources/FailTests/AddIntBool.java b/src/test/resources/FailTests/AddIntBool.java new file mode 100644 index 0000000..0a2c258 --- /dev/null +++ b/src/test/resources/FailTests/AddIntBool.java @@ -0,0 +1,7 @@ +class AddIntBool { + + public int add(int myInt, bool myBool) { + int result = myInt + myBool; + } + +} \ No newline at end of file diff --git a/src/test/resources/SimpleTests/CharArgument.class b/src/test/resources/SimpleTests/CharArgument.class index 09b3c8c..a927b5f 100644 Binary files a/src/test/resources/SimpleTests/CharArgument.class and b/src/test/resources/SimpleTests/CharArgument.class differ diff --git a/src/test/resources/SimpleTests/CharArgument.java b/src/test/resources/SimpleTests/CharArgument.java index 5356939..583732e 100644 --- a/src/test/resources/SimpleTests/CharArgument.java +++ b/src/test/resources/SimpleTests/CharArgument.java @@ -1,12 +1,12 @@ class CharArgument { - char c; + public char c; public CharArgument() { this.c = foo('a'); } - char foo(char c) { + public char foo(char c) { return c; } diff --git a/src/test/resources/basicClasses/EmptyClassWithConstructor.class b/src/test/resources/basicClasses/EmptyClassWithConstructor.class new file mode 100644 index 0000000..64949c9 Binary files /dev/null and b/src/test/resources/basicClasses/EmptyClassWithConstructor.class differ