[AA] Fix processing of member invoke functions from objects in reference shortening and import optimization
Correctly handle `KtDotQualifedExpression`s with function calls as selectors (like `foo.Bar()`). Without such handling, processing of member invoke calls on objects was broken both for reference shortener (causing KTIJ-26695) and import optimizer (causing KTIJ-23407) Also, to fix KTIJ-23407, do not ignore qualifiers with `ImplicitInvokeCall` fake source ^KTIJ-26695 Fixed ^KTIJ-23407 Fixed
This commit is contained in:
+12
@@ -118,6 +118,12 @@ public class FirStandaloneNormalAnalysisSourceModuleAnalysisApiImportOptimizerTe
|
||||
runTest("analysis/analysis-api/testData/components/importOptimizer/analyseImports/unusedInvokeOperatorImport.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("unusedObject_invokeOperator.kt")
|
||||
public void testUnusedObject_invokeOperator() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/importOptimizer/analyseImports/unusedObject_invokeOperator.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("unusedStaticFunctionImportFromJavaChildClass.kt")
|
||||
public void testUnusedStaticFunctionImportFromJavaChildClass() throws Exception {
|
||||
@@ -214,6 +220,12 @@ public class FirStandaloneNormalAnalysisSourceModuleAnalysisApiImportOptimizerTe
|
||||
runTest("analysis/analysis-api/testData/components/importOptimizer/analyseImports/usedInvokeOperatorImport.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("usedObject_invokeOperator.kt")
|
||||
public void testUsedObject_invokeOperator() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/importOptimizer/analyseImports/usedObject_invokeOperator.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("usedStaticFunctionImportFromJavaChildClass.kt")
|
||||
public void testUsedStaticFunctionImportFromJavaChildClass() throws Exception {
|
||||
|
||||
+6
@@ -316,6 +316,12 @@ public class FirStandaloneNormalAnalysisSourceModuleReferenceShortenerTestGenera
|
||||
runTest("analysis/analysis-api/testData/components/referenceShortener/referenceShortener/nestedClass3.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("objectWithInvokeOperator.kt")
|
||||
public void testObjectWithInvokeOperator() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/referenceShortener/referenceShortener/objectWithInvokeOperator.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("parameterTypeTopLevelTypeLoses.kt")
|
||||
public void testParameterTypeTopLevelTypeLoses() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user