[Test] Properly dispose class loader for running BB tests

This commit is contained in:
Dmitriy Novozhilov
2021-01-11 12:48:58 +03:00
committed by TeamCityServer
parent e6fd74f368
commit 5329a6ce8e
@@ -43,6 +43,7 @@ class JvmBoxRunner(testServices: TestServices) : JvmBinaryArtifactHandler(testSe
val ktFiles = info.classFileFactory.inputFiles val ktFiles = info.classFileFactory.inputFiles
val reportProblems = module.targetBackend !in module.directives[CodegenTestDirectives.IGNORE_BACKEND] val reportProblems = module.targetBackend !in module.directives[CodegenTestDirectives.IGNORE_BACKEND]
val classLoader = createAndVerifyClassLoader(module, info.classFileFactory, reportProblems) val classLoader = createAndVerifyClassLoader(module, info.classFileFactory, reportProblems)
try {
for (ktFile in ktFiles) { for (ktFile in ktFiles) {
val className = ktFile.getFacadeFqName() ?: continue val className = ktFile.getFacadeFqName() ?: continue
val clazz = classLoader.getGeneratedClass(className) val clazz = classLoader.getGeneratedClass(className)
@@ -58,6 +59,9 @@ class JvmBoxRunner(testServices: TestServices) : JvmBinaryArtifactHandler(testSe
) )
return return
} }
} finally {
classLoader.dispose()
}
} }
private fun callBoxMethodAndCheckResultWithCleanup( private fun callBoxMethodAndCheckResultWithCleanup(