Minor fix in tests for sources appearing in libraries
This commit is contained in:
@@ -24,15 +24,14 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.jet.cli.common.ExitCode;
|
||||
import org.jetbrains.jet.cli.jvm.K2JVMCompiler;
|
||||
import org.jetbrains.jet.codegen.forTestCompile.ForTestCompileRuntime;
|
||||
import org.jetbrains.jet.utils.UtilsPackage;
|
||||
import org.jetbrains.jet.utils.PathUtil;
|
||||
import org.jetbrains.jet.utils.UtilsPackage;
|
||||
|
||||
import java.io.*;
|
||||
import java.lang.reflect.Method;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.net.URLClassLoader;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.regex.Pattern;
|
||||
@@ -44,7 +43,7 @@ public class MockLibraryUtil {
|
||||
|
||||
private static Class<?> compilerClass = null;
|
||||
|
||||
public static File compileLibraryToJar(String sourcesPath) {
|
||||
public static File compileLibraryToJar(String sourcesPath, boolean addSources) {
|
||||
try {
|
||||
File contentDir = JetTestUtils.tmpDir("lib-content");
|
||||
|
||||
@@ -76,7 +75,9 @@ public class MockLibraryUtil {
|
||||
|
||||
ZipOutputStream zip = new ZipOutputStream(new FileOutputStream(jarFile));
|
||||
ZipUtil.addDirToZipRecursively(zip, jarFile, classesDir, "", null, null);
|
||||
ZipUtil.addDirToZipRecursively(zip, jarFile, new File(sourcesPath), "src", null, null);
|
||||
if (addSources) {
|
||||
ZipUtil.addDirToZipRecursively(zip, jarFile, new File(sourcesPath), "src", null, null);
|
||||
}
|
||||
zip.close();
|
||||
|
||||
return jarFile;
|
||||
|
||||
@@ -59,10 +59,10 @@ public abstract class AbstractTopLevelMembersInvocationTest extends AbstractByte
|
||||
|
||||
File library = new File(root, LIBRARY);
|
||||
List<File> classPath = library.exists() ?
|
||||
Collections.singletonList(MockLibraryUtil.compileLibraryToJar(library.getPath())) :
|
||||
Collections.singletonList(MockLibraryUtil.compileLibraryToJar(library.getPath(), false)) :
|
||||
Collections.<File>emptyList();
|
||||
|
||||
assert !sourceFiles.isEmpty() : getTestName(true) + " should contains at least one .kt file";
|
||||
assert !sourceFiles.isEmpty() : getTestName(true) + " should contain at least one .kt file";
|
||||
Collections.sort(sourceFiles);
|
||||
|
||||
myEnvironment = JetCoreEnvironment.createForTests(getTestRootDisposable(), JetTestUtils.compilerConfigurationForTests(
|
||||
|
||||
+5
-3
@@ -26,7 +26,9 @@ import org.jetbrains.jet.TestJdkKind;
|
||||
import org.jetbrains.jet.analyzer.AnalyzeExhaust;
|
||||
import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
|
||||
import org.jetbrains.jet.config.CompilerConfiguration;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.PackageViewDescriptor;
|
||||
import org.jetbrains.jet.lang.resolve.AnalyzerScriptParameter;
|
||||
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM;
|
||||
import org.jetbrains.jet.test.TestCaseWithTmpdir;
|
||||
@@ -43,8 +45,8 @@ import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarFile;
|
||||
import java.util.zip.ZipOutputStream;
|
||||
|
||||
import static org.jetbrains.jet.test.util.RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile;
|
||||
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.isObject;
|
||||
import static org.jetbrains.jet.test.util.RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile;
|
||||
|
||||
public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
|
||||
public static final String TEST_DATA_PATH = "compiler/testData/compileKotlinAgainstCustomBinaries/";
|
||||
@@ -56,7 +58,7 @@ public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
|
||||
|
||||
@NotNull
|
||||
private File compileLibrary(@NotNull String sourcePath) {
|
||||
return MockLibraryUtil.compileLibraryToJar(new File(getTestDataDirectory(), sourcePath).getPath());
|
||||
return MockLibraryUtil.compileLibraryToJar(new File(getTestDataDirectory(), sourcePath).getPath(), false);
|
||||
}
|
||||
|
||||
private void doTestWithTxt(@NotNull File... extraClassPath) throws Exception {
|
||||
|
||||
@@ -21,7 +21,7 @@ public class JdkAndMockLibraryProjectDescriptor extends JetLightProjectDescripto
|
||||
|
||||
@Override
|
||||
public void configureModule(Module module, ModifiableRootModel model, ContentEntry contentEntry) {
|
||||
File libraryJar = MockLibraryUtil.compileLibraryToJar(sourcesPath);
|
||||
File libraryJar = MockLibraryUtil.compileLibraryToJar(sourcesPath, withSources);
|
||||
String jarUrl = "jar://" + FileUtilRt.toSystemIndependentName(libraryJar.getAbsolutePath()) + "!/";
|
||||
|
||||
Library.ModifiableModel libraryModel = model.getModuleLibraryTable().getModifiableModel().createLibrary("myKotlinLib").getModifiableModel();
|
||||
|
||||
Reference in New Issue
Block a user