diff --git a/test/bytecode/MergeTest.java b/test/bytecode/MergeTest.java index 37345ca8..6a0044ce 100644 --- a/test/bytecode/MergeTest.java +++ b/test/bytecode/MergeTest.java @@ -1,12 +1,13 @@ package bytecode; -import static org.junit.Assert.*; + +import static org.junit.Assert.assertEquals; import java.io.File; +import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; -import org.junit.BeforeClass; import org.junit.Test; import de.dhbwstuttgart.core.JavaTXCompiler; @@ -20,24 +21,21 @@ public class MergeTest { private static String pathToClassFile; private static Object instanceOfClass; -// @BeforeClass -// public static void setUpBeforeClass() throws Exception { -// path = System.getProperty("user.dir")+"/test/bytecode/javFiles/Merge.jav"; -// fileToTest = new File(path); -// compiler = new JavaTXCompiler(fileToTest); -// compiler.generateBytecode(System.getProperty("user.dir")+"/testBytecode/generatedBC/"); -// pathToClassFile = System.getProperty("user.dir")+"/testBytecode/generatedBC/"; -// loader = new URLClassLoader(new URL[] {new URL("file://"+pathToClassFile)}); -// classToTest = loader.loadClass("Merge"); -// instanceOfClass = classToTest.getDeclaredConstructor().newInstance(); -// } @Test - public void generateBC() throws Exception{ + public void generateBC() throws Exception { path = System.getProperty("user.dir")+"/test/bytecode/javFiles/Merge.jav"; fileToTest = new File(path); compiler = new JavaTXCompiler(fileToTest); compiler.generateBytecode(System.getProperty("user.dir")+"/testBytecode/generatedBC/"); - } + pathToClassFile = System.getProperty("user.dir")+"/testBytecode/generatedBC/"; + loader = new URLClassLoader(new URL[] {new URL("file://"+pathToClassFile)}); + classToTest = loader.loadClass("Merge"); + //instanceOfClass = classToTest.getDeclaredConstructor().newInstance(); + //Method m = classToTest.getDeclaredMethod("m"); + //Object result = m.invoke(instanceOfClass); + + //assertEquals(result.getClass(), loader.loadClass("Apply")); + } } diff --git a/test/bytecode/javFiles/Merge.jav b/test/bytecode/javFiles/Merge.jav index b2cd9920..627e9f45 100644 --- a/test/bytecode/javFiles/Merge.jav +++ b/test/bytecode/javFiles/Merge.jav @@ -9,9 +9,12 @@ class Merge { return a; } + +/* sort(in){ var firstHalf = in.subList(1,2); var secondHalf = in.subList(1,2); return merge(sort(firstHalf), sort(secondHalf)); } + */ } \ No newline at end of file diff --git a/test/bytecode/javFiles/OL.jav b/test/bytecode/javFiles/OL.jav index 263cf1ec..e117f7dd 100644 --- a/test/bytecode/javFiles/OL.jav +++ b/test/bytecode/javFiles/OL.jav @@ -13,9 +13,9 @@ public class OL { } -public class OLMain { +public class OLMain { - main(x) { + main(java.lang.Integer x) { var ol; ol = new OL(); return ol.m(x);