Add verification by dx.jar to CodegenTests
A patch by Natalia Ukhorskaya: https://github.com/JetBrains/kotlin/pull/70 Adds Android verfication to our codegen tests
This commit is contained in:
@@ -184,6 +184,11 @@ public abstract class CodegenTestCase extends UsefulTestCase {
|
||||
|
||||
protected void blackBox() {
|
||||
GenerationState state = generateClassesInFileGetState();
|
||||
|
||||
if (DxChecker.RUN_DX_CHECKER) {
|
||||
DxChecker.check(state.getFactory());
|
||||
}
|
||||
|
||||
GeneratedClassLoader loader = createClassLoader(state.getFactory());
|
||||
|
||||
String r;
|
||||
@@ -224,7 +229,7 @@ public abstract class CodegenTestCase extends UsefulTestCase {
|
||||
r = (String) method.invoke(null);
|
||||
assertEquals("OK", r);
|
||||
}
|
||||
} catch (NoClassDefFoundError e) {
|
||||
} catch (Error e) {
|
||||
System.out.println(generateToText());
|
||||
throw e;
|
||||
} catch (Throwable e) {
|
||||
@@ -268,6 +273,11 @@ public abstract class CodegenTestCase extends UsefulTestCase {
|
||||
|
||||
protected Class generateNamespaceClass() {
|
||||
ClassFileFactory state = generateClassesInFile();
|
||||
|
||||
if (DxChecker.RUN_DX_CHECKER) {
|
||||
DxChecker.check(state);
|
||||
}
|
||||
|
||||
return loadRootNamespaceClass(state);
|
||||
}
|
||||
|
||||
@@ -299,6 +309,11 @@ public abstract class CodegenTestCase extends UsefulTestCase {
|
||||
@NotNull
|
||||
protected ClassFileFactory generateClassesInFile() {
|
||||
GenerationState generationState = generateClassesInFileGetState();
|
||||
|
||||
if (DxChecker.RUN_DX_CHECKER) {
|
||||
DxChecker.check(generationState.getFactory());
|
||||
}
|
||||
|
||||
return generationState.getFactory();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user