in tests, allow access to loaded compiler classes if compiler on classpath

This commit is contained in:
Mark Harrah 2011-04-15 18:21:52 -04:00
parent 7fb97c6353
commit 897f9ca3d1
1 changed files with 2 additions and 1 deletions

View File

@ -188,7 +188,8 @@ object TestFramework
}
def createTestLoader(classpath: Seq[File], scalaInstance: ScalaInstance): ClassLoader =
{
val filterCompilerLoader = new FilteredLoader(scalaInstance.loader, ScalaCompilerJarPackages)
val declaresCompiler = classpath.exists(_.getName contains "scala-compiler")
val filterCompilerLoader = if(declaresCompiler) scalaInstance.loader else new FilteredLoader(scalaInstance.loader, ScalaCompilerJarPackages)
val interfaceFilter = (name: String) => name.startsWith("org.scalatools.testing.")
val notInterfaceFilter = (name: String) => !interfaceFilter(name)
val dual = new DualLoader(filterCompilerLoader, notInterfaceFilter, x => true, getClass.getClassLoader, interfaceFilter, x => false)