LTDA: Compare constructed descriptors only with test files

This commit is contained in:
Nikolay Krasko
2014-09-02 13:58:34 +04:00
parent 48f459f656
commit b57e5fa971
5 changed files with 18 additions and 16 deletions
@@ -438,7 +438,7 @@ public class JetTestUtils {
}
}
}
LazyResolveTestUtil.resolveEagerly(jetFiles, environment);
LazyResolveTestUtil.resolve(jetFiles, environment);
}
@NotNull
@@ -61,21 +61,16 @@ public abstract class AbstractLazyResolveRecursiveComparingTest extends KotlinTe
}
);
ModuleDescriptor eagerModule = LazyResolveTestUtil.resolveEagerly(files, getEnvironment());
ModuleDescriptor lazyModule = LazyResolveTestUtil.resolveLazily(files, getEnvironment());
ModuleDescriptor module = LazyResolveTestUtil.resolve(files, getEnvironment());
FqName test = new FqName("test");
PackageViewDescriptor actual = lazyModule.getPackage(test);
Assert.assertNotNull("Package for name " + test + " is null after lazy resolve", actual);
PackageViewDescriptor expected = eagerModule.getPackage(test);
Assert.assertNotNull("Package for name " + test + " is null after eager resolve", expected);
String testedPackage = "test";
PackageViewDescriptor testPackage = module.getPackage(new FqName(testedPackage));
Assert.assertNotNull("Package for name '" + testedPackage + "' is null after resolve", testPackage);
File serializeResultsTo = new File(FileUtil.getNameWithoutExtension(testFileName) + ".txt");
RecursiveDescriptorComparator.validateAndCompareDescriptors(
expected, actual, RecursiveDescriptorComparator.DONT_INCLUDE_METHODS_OF_OBJECT
RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile(
testPackage, RecursiveDescriptorComparator.DONT_INCLUDE_METHODS_OF_OBJECT
.filterRecursion(RecursiveDescriptorComparator.SKIP_BUILT_INS_PACKAGES)
.checkPrimaryConstructors(checkPrimaryConstructors)
.checkPropertyAccessors(checkPropertyAccessors)
@@ -48,7 +48,7 @@ public class LazyResolveStdlibLoadingTest extends KotlinTestWithEnvironmentManag
) {
Set<Name> packageShortNames = LazyResolveTestUtil.getTopLevelPackagesFromFileList(files);
ModuleDescriptor module = LazyResolveTestUtil.resolveEagerly(files, stdlibEnvironment);
ModuleDescriptor module = LazyResolveTestUtil.resolve(files, stdlibEnvironment);
ModuleDescriptor lazyModule = LazyResolveTestUtil.resolveLazily(files, stdlibEnvironment);
for (Name name : packageShortNames) {
@@ -44,12 +44,19 @@ public class LazyResolveTestUtil {
private LazyResolveTestUtil() {
}
public static ModuleDescriptor resolveEagerly(List<JetFile> files, JetCoreEnvironment environment) {
public static ModuleDescriptor resolve(List<JetFile> files, JetCoreEnvironment environment) {
return doResolve(files, environment);
}
private static ModuleDescriptor doResolve(List<JetFile> files, JetCoreEnvironment environment) {
JetTestUtils.newTrace(environment);
GlobalContextImpl globalContext = ContextPackage.GlobalContext();
TopDownAnalysisParameters params = TopDownAnalysisParameters.create(
globalContext.getStorageManager(), globalContext.getExceptionTracker(), Predicates.<PsiFile>alwaysTrue(), false, false);
globalContext.getStorageManager(),
globalContext.getExceptionTracker(),
Predicates.<PsiFile>alwaysTrue(),
false, false);
CliLightClassGenerationSupport support = CliLightClassGenerationSupport.getInstanceForCli(environment.getProject());
BindingTrace sharedTrace = support.getTrace();
ModuleDescriptorImpl sharedModule = support.newModule();
@@ -585,7 +585,7 @@ public class JetTypeCheckerTest extends JetLiteFixture {
}
private WritableScope getDeclarationsScope(String path) throws IOException {
ModuleDescriptor moduleDescriptor = LazyResolveTestUtil.resolveEagerly(
ModuleDescriptor moduleDescriptor = LazyResolveTestUtil.resolve(
Collections.singletonList(JetTestUtils.loadJetFile(getProject(), new File(path))),
getEnvironment()
);