[java-decompiler] main test method extended to accept companion files

This commit is contained in:
Roman Shevchenko
2015-09-07 20:34:28 +03:00
parent aab87019ef
commit ee740aa056

View File

@@ -49,16 +49,26 @@ public abstract class SingleClassesTestBase {
return Collections.emptyMap(); return Collections.emptyMap();
} }
protected void doTest(String testFile) { protected void doTest(String testFile, String... companionFiles) {
File classFile = new File(fixture.getTestDataDir(), "/classes/" + testFile + ".class");
assertTrue(classFile.isFile());
String testName = classFile.getName().substring(0, classFile.getName().length() - 6);
ConsoleDecompiler decompiler = fixture.getDecompiler(); ConsoleDecompiler decompiler = fixture.getDecompiler();
for (File file : collectClasses(classFile)) decompiler.addSpace(file, true); File classFile = new File(fixture.getTestDataDir(), "/classes/" + testFile + ".class");
assertTrue(classFile.isFile());
for (File file : collectClasses(classFile)) {
decompiler.addSpace(file, true);
}
for (String companionFile : companionFiles) {
File companionClassFile = new File(fixture.getTestDataDir(), "/classes/" + companionFile + ".class");
assertTrue(companionClassFile.isFile());
for (File file : collectClasses(companionClassFile)) {
decompiler.addSpace(file, true);
}
}
decompiler.decompileContext(); decompiler.decompileContext();
String testName = classFile.getName().substring(0, classFile.getName().length() - 6);
File decompiledFile = new File(fixture.getTargetDir(), testName + ".java"); File decompiledFile = new File(fixture.getTargetDir(), testName + ".java");
assertTrue(decompiledFile.isFile()); assertTrue(decompiledFile.isFile());
File referenceFile = new File(fixture.getTestDataDir(), "results/" + testName + ".dec"); File referenceFile = new File(fixture.getTestDataDir(), "results/" + testName + ".dec");