Alias importing fixed for the lazy case

This commit is contained in:
Andrey Breslav
2014-03-19 18:20:03 +04:00
parent 9ecd680fd4
commit 4dfb6763b2
4 changed files with 34 additions and 6 deletions
@@ -0,0 +1,11 @@
// FILE: a.kt
package a
val x = 1
// FILE: b.kt
package b
import a.x as AX
val y = AX
@@ -33,7 +33,7 @@ import org.jetbrains.jet.checkers.AbstractJetDiagnosticsTest;
@InnerTestClasses({JetDiagnosticsTestGenerated.Tests.class, JetDiagnosticsTestGenerated.Script.class, JetDiagnosticsTestGenerated.TailRecursion.class})
public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
@TestMetadata("compiler/testData/diagnostics/tests")
@InnerTestClasses({Tests.Annotations.class, Tests.BackingField.class, Tests.CallableReference.class, Tests.Cast.class, Tests.CheckArguments.class, Tests.ClassObjects.class, Tests.ControlFlowAnalysis.class, Tests.ControlStructures.class, Tests.DataClasses.class, Tests.DataFlow.class, Tests.DataFlowInfoTraversal.class, Tests.DeclarationChecks.class, Tests.DelegatedProperty.class, Tests.Deparenthesize.class, Tests.Enum.class, Tests.Evaluate.class, Tests.Extensions.class, Tests.FunctionLiterals.class, Tests.Generics.class, Tests.IncompleteCode.class, Tests.Inference.class, Tests.Infos.class, Tests.Inline.class, Tests.Inner.class, Tests.J_k.class, Tests.Jdk_annotations.class, Tests.Library.class, Tests.NamedArguments.class, Tests.NullabilityAndAutoCasts.class, Tests.NullableTypes.class, Tests.Numbers.class, Tests.Objects.class, Tests.OperatorsOverloading.class, Tests.Overload.class, Tests.Override.class, Tests.Recovery.class, Tests.Redeclarations.class, Tests.Regressions.class, Tests.Resolve.class, Tests.Scopes.class, Tests.SenselessComparison.class, Tests.Shadowing.class, Tests.SmartCasts.class, Tests.Substitutions.class, Tests.Subtyping.class, Tests.Suppress.class, Tests.ThisAndSuper.class, Tests.Unit.class, Tests.Varargs.class, Tests.When.class})
@InnerTestClasses({Tests.Annotations.class, Tests.BackingField.class, Tests.CallableReference.class, Tests.Cast.class, Tests.CheckArguments.class, Tests.ClassObjects.class, Tests.ControlFlowAnalysis.class, Tests.ControlStructures.class, Tests.DataClasses.class, Tests.DataFlow.class, Tests.DataFlowInfoTraversal.class, Tests.DeclarationChecks.class, Tests.DelegatedProperty.class, Tests.Deparenthesize.class, Tests.Enum.class, Tests.Evaluate.class, Tests.Extensions.class, Tests.FunctionLiterals.class, Tests.Generics.class, Tests.Imports.class, Tests.IncompleteCode.class, Tests.Inference.class, Tests.Infos.class, Tests.Inline.class, Tests.Inner.class, Tests.J_k.class, Tests.Jdk_annotations.class, Tests.Library.class, Tests.NamedArguments.class, Tests.NullabilityAndAutoCasts.class, Tests.NullableTypes.class, Tests.Numbers.class, Tests.Objects.class, Tests.OperatorsOverloading.class, Tests.Overload.class, Tests.Override.class, Tests.Recovery.class, Tests.Redeclarations.class, Tests.Regressions.class, Tests.Resolve.class, Tests.Scopes.class, Tests.SenselessComparison.class, Tests.Shadowing.class, Tests.SmartCasts.class, Tests.Substitutions.class, Tests.Subtyping.class, Tests.Suppress.class, Tests.ThisAndSuper.class, Tests.Unit.class, Tests.Varargs.class, Tests.When.class})
public static class Tests extends AbstractJetDiagnosticsTest {
@TestMetadata("Abstract.kt")
public void testAbstract() throws Exception {
@@ -254,11 +254,6 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
doTest("compiler/testData/diagnostics/tests/IllegalModifiers.kt");
}
@TestMetadata("ImportResolutionOrder.kt")
public void testImportResolutionOrder() throws Exception {
doTest("compiler/testData/diagnostics/tests/ImportResolutionOrder.kt");
}
@TestMetadata("IncDec.kt")
public void testIncDec() throws Exception {
doTest("compiler/testData/diagnostics/tests/IncDec.kt");
@@ -3344,6 +3339,24 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
}
}
@TestMetadata("compiler/testData/diagnostics/tests/imports")
public static class Imports extends AbstractJetDiagnosticsTest {
public void testAllFilesPresentInImports() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), "org.jetbrains.jet.generators.tests.TestsPackage", new File("compiler/testData/diagnostics/tests/imports"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("ImportResolutionOrder.kt")
public void testImportResolutionOrder() throws Exception {
doTest("compiler/testData/diagnostics/tests/imports/ImportResolutionOrder.kt");
}
@TestMetadata("RenameOnImport.kt")
public void testRenameOnImport() throws Exception {
doTest("compiler/testData/diagnostics/tests/imports/RenameOnImport.kt");
}
}
@TestMetadata("compiler/testData/diagnostics/tests/incompleteCode")
@InnerTestClasses({IncompleteCode.DiagnosticWithSyntaxError.class})
public static class IncompleteCode extends AbstractJetDiagnosticsTest {
@@ -7087,6 +7100,7 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
suite.addTestSuite(Extensions.class);
suite.addTest(FunctionLiterals.innerSuite());
suite.addTest(Generics.innerSuite());
suite.addTestSuite(Imports.class);
suite.addTest(IncompleteCode.innerSuite());
suite.addTest(Inference.innerSuite());
suite.addTestSuite(Infos.class);
@@ -340,7 +340,10 @@ public class WritableScopeImpl extends WritableScopeWithImports {
checkMayWrite();
checkForRedeclaration(name, variableDescriptor);
getVariableOrClassDescriptors().put(name, variableDescriptor);
getPropertyGroups().put(name, variableDescriptor);
allDescriptors.add(variableDescriptor);
addToDeclared(variableDescriptor);
}