From 25b71cd6c900d51e38866dc4bb3cfd8e77ebad7c Mon Sep 17 00:00:00 2001 From: Maxim Shafirov Date: Wed, 25 Jan 2012 17:00:30 +0400 Subject: [PATCH] suite.addTestSuite(class) won't work if passed TestCase instance has TestCase.class loaded by different classloader. It does so very silently (this is a note to reified generics haters) --- .../tests/org/jetbrains/jet/codegen/TestlibTest.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/compiler/tests/org/jetbrains/jet/codegen/TestlibTest.java b/compiler/tests/org/jetbrains/jet/codegen/TestlibTest.java index 096238cc509..525ab1594c1 100644 --- a/compiler/tests/org/jetbrains/jet/codegen/TestlibTest.java +++ b/compiler/tests/org/jetbrains/jet/codegen/TestlibTest.java @@ -74,11 +74,10 @@ public class TestlibTest extends CodegenTestCase { ClassFileFactory classFileFactory = session.generate(); - URLClassLoader dependenciesClassLoader = new URLClassLoader(new URL[] { junitJar.toURI().toURL() }); - GeneratedClassLoader loader; - URLClassLoader parentClassLoader = new URLClassLoader(new URL[]{ - ForTestCompileStdlib.stdlibJarForTests().toURI().toURL()}, dependenciesClassLoader); - loader = new GeneratedClassLoader(classFileFactory, parentClassLoader); + GeneratedClassLoader loader = new GeneratedClassLoader( + classFileFactory, + new URLClassLoader(new URL[]{ForTestCompileStdlib.stdlibJarForTests().toURI().toURL(), junitJar.toURI().toURL()}, + TestCase.class.getClassLoader())); JetTypeMapper typeMapper = new JetTypeMapper(classFileFactory.state.getStandardLibrary(), session.getMyBindingContext()); TestSuite suite = new TestSuite("StandardLibrary");