Get rid of getModuleName(), pass configuration to createContextWithSealedModule

Add KotlinTestUtils.newConfiguration() which creates a configuration and sets
the module name to the default test one ("test-module")
This commit is contained in:
Alexander Udalov
2016-05-23 14:19:50 +03:00
parent 69343549b7
commit c5e2f55ea7
15 changed files with 46 additions and 73 deletions
@@ -28,6 +28,7 @@ import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.descriptors.PackagePartProvider;
import org.jetbrains.kotlin.psi.KtFile;
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
import org.jetbrains.kotlin.test.KotlinTestUtils;
import java.io.File;
import java.util.Collections;
@@ -54,7 +55,7 @@ public class GenerationUtils {
PackagePartProvider packagePartProvider =
environment == null ? PackagePartProvider.Companion.getEMPTY() : new JvmPackagePartProvider(environment);
CompilerConfiguration configuration =
environment == null ? CompilerConfiguration.EMPTY : environment.getConfiguration();
environment == null ? KotlinTestUtils.newConfiguration() : environment.getConfiguration();
AnalysisResult analysisResult =
JvmResolveUtil.analyzeAndCheckForErrors(CollectionsKt.first(files).getProject(), files, configuration, packagePartProvider);
@@ -25,7 +25,6 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
import org.jetbrains.kotlin.cli.jvm.compiler.JvmPackagePartProvider;
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
import org.jetbrains.kotlin.cli.jvm.config.ModuleNameKt;
import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.config.ContentRootsKt;
import org.jetbrains.kotlin.config.JVMConfigurationKeys;
@@ -152,8 +151,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
}
});
CompilerConfiguration configuration = KotlinTestUtils.compilerConfigurationForTests(
ConfigurationKind.JDK_ONLY, getJdkKind());
CompilerConfiguration configuration = KotlinTestUtils.compilerConfigurationForTests(ConfigurationKind.JDK_ONLY, getJdkKind());
ContentRootsKt.addKotlinSourceRoot(configuration, sourcesDir.getAbsolutePath());
JvmContentRootsKt.addJavaSourceRoot(configuration, new File("compiler/testData/loadJava/include"));
JvmContentRootsKt.addJavaSourceRoot(configuration, tmpdir);
@@ -162,9 +160,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
KotlinCoreEnvironment.createForTests(getTestRootDisposable(), configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES);
BindingTrace trace = new CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace();
ModuleContext moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(
environment.getProject(), ModuleNameKt.getModuleName(environment)
);
ModuleContext moduleContext = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(environment.getProject(), configuration);
TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
moduleContext, environment.getSourceFiles(), trace, configuration, new JvmPackagePartProvider(environment)
@@ -20,7 +20,6 @@ import com.intellij.openapi.editor.impl.DocumentImpl
import com.intellij.openapi.util.io.FileUtil
import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.cli.jvm.config.getModuleName
import org.jetbrains.kotlin.container.ComponentProvider
import org.jetbrains.kotlin.container.get
import org.jetbrains.kotlin.descriptors.ClassDescriptor
@@ -54,8 +53,7 @@ abstract class AbstractDescriptorRendererTest : KotlinTestWithEnvironment() {
val fileText = FileUtil.loadFile(File(path), true)
val psiFile = KtPsiFactory(project).createFile(fileText)
val context = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, environment.getModuleName())
val context = TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, environment.configuration)
val container = createContainerForLazyResolve(
context,
@@ -27,7 +27,6 @@ import org.jetbrains.kotlin.descriptors.PackagePartProvider;
import org.jetbrains.kotlin.psi.KtFile;
import org.jetbrains.kotlin.resolve.AnalyzingUtils;
import org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM;
import org.jetbrains.kotlin.test.KotlinTestUtils;
import java.util.Collection;
import java.util.Collections;
@@ -89,7 +88,7 @@ public class JvmResolveUtil {
@NotNull PackagePartProvider packagePartProvider
) {
return TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, KotlinTestUtils.TEST_MODULE_NAME),
TopDownAnalyzerFacadeForJVM.createContextWithSealedModule(project, configuration),
files, new CliLightClassGenerationSupport.CliBindingTrace(), configuration, packagePartProvider
);
}
@@ -53,10 +53,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime;
import org.jetbrains.kotlin.config.CommonConfigurationKeys;
import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.config.ContentRoot;
import org.jetbrains.kotlin.config.KotlinSourceRoot;
import org.jetbrains.kotlin.config.*;
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
import org.jetbrains.kotlin.diagnostics.Diagnostic;
import org.jetbrains.kotlin.diagnostics.Errors;
@@ -95,8 +92,6 @@ import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static org.jetbrains.kotlin.config.JVMConfigurationKeys.MODULE_NAME;
public class KotlinTestUtils {
public static String TEST_MODULE_NAME = "test-module";
@@ -423,6 +418,13 @@ public class KotlinTestUtils {
return FileUtil.toSystemIndependentName(file.getPath());
}
@NotNull
public static CompilerConfiguration newConfiguration() {
CompilerConfiguration configuration = new CompilerConfiguration();
configuration.put(JVMConfigurationKeys.MODULE_NAME, TEST_MODULE_NAME);
return configuration;
}
@NotNull
public static CompilerConfiguration compilerConfigurationForTests(
@NotNull ConfigurationKind configurationKind,
@@ -439,7 +441,7 @@ public class KotlinTestUtils {
@NotNull List<File> classpath,
@NotNull List<File> javaSource
) {
CompilerConfiguration configuration = new CompilerConfiguration();
CompilerConfiguration configuration = newConfiguration();
JvmContentRootsKt.addJavaSourceRoots(configuration, javaSource);
if (jdkKind == TestJdkKind.MOCK_JDK) {
JvmContentRootsKt.addJvmClasspathRoot(configuration, findMockJdkRtJar());
@@ -467,8 +469,6 @@ public class KotlinTestUtils {
JvmContentRootsKt.addJvmClasspathRoots(configuration, classpath);
configuration.put(MODULE_NAME, TEST_MODULE_NAME);
return configuration;
}