From 68519af97a952961c0c2d432e18a71098bdd0c84 Mon Sep 17 00:00:00 2001 From: Jinseong Jeon Date: Tue, 6 Sep 2022 23:03:50 -0700 Subject: [PATCH] AA: add tests about platform types ...as declaration return type or expression type --- ...ModuleDeclarationReturnTypeTestGenerated.java | 6 ++++++ ...ourceModuleHLExpressionTypeTestGenerated.java | 6 ++++++ ...ModuleDeclarationReturnTypeTestGenerated.java | 6 ++++++ ...ourceModuleHLExpressionTypeTestGenerated.java | 6 ++++++ ...ModuleDeclarationReturnTypeTestGenerated.java | 6 ++++++ ...ourceModuleHLExpressionTypeTestGenerated.java | 6 ++++++ .../AbstractDeclarationReturnTypeTest.kt | 16 ++++++++-------- ...ModuleDeclarationReturnTypeTestGenerated.java | 6 ++++++ ...ourceModuleHLExpressionTypeTestGenerated.java | 6 ++++++ .../declarationReturnType/platformType.kt | 1 + .../declarationReturnType/platformType.txt | 1 + .../expressionType/platformType.kt | 1 + .../expressionType/platformType.txt | 2 ++ 13 files changed, 61 insertions(+), 8 deletions(-) create mode 100644 analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt create mode 100644 analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.txt create mode 100644 analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt create mode 100644 analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.txt diff --git a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java index 153d9450de4..01cc0eddbb9 100644 --- a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java +++ b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java @@ -76,6 +76,12 @@ public class Fe10IdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/overriddenMember.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt"); + } + @Test @TestMetadata("propertyAccessor.kt") public void testPropertyAccessor() throws Exception { diff --git a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java index 6428be15814..5e0edac3243 100644 --- a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java +++ b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/expressionTypeProvider/Fe10IdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java @@ -142,6 +142,12 @@ public class Fe10IdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated exte runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/nonExpression.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt"); + } + @Test @TestMetadata("plusAssign.kt") public void testPlusAssign() throws Exception { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java index be0162c23f5..e9d30ee67ef 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java @@ -76,6 +76,12 @@ public class FirIdeDependentAnalysisSourceModuleDeclarationReturnTypeTestGenerat runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/overriddenMember.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt"); + } + @Test @TestMetadata("propertyAccessor.kt") public void testPropertyAccessor() throws Exception { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleHLExpressionTypeTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleHLExpressionTypeTestGenerated.java index 7d155d4bcbd..f6b3b05df0a 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleHLExpressionTypeTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeDependentAnalysisSourceModuleHLExpressionTypeTestGenerated.java @@ -142,6 +142,12 @@ public class FirIdeDependentAnalysisSourceModuleHLExpressionTypeTestGenerated ex runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/nonExpression.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt"); + } + @Test @TestMetadata("plusAssign.kt") public void testPlusAssign() throws Exception { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java index b49784464b3..90d70391ae9 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java @@ -76,6 +76,12 @@ public class FirIdeNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/overriddenMember.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt"); + } + @Test @TestMetadata("propertyAccessor.kt") public void testPropertyAccessor() throws Exception { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java index da30becb6c7..a18cafabf52 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/expressionTypeProvider/FirIdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java @@ -142,6 +142,12 @@ public class FirIdeNormalAnalysisSourceModuleHLExpressionTypeTestGenerated exten runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/nonExpression.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt"); + } + @Test @TestMetadata("plusAssign.kt") public void testPlusAssign() throws Exception { diff --git a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/expressionTypeProvider/AbstractDeclarationReturnTypeTest.kt b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/expressionTypeProvider/AbstractDeclarationReturnTypeTest.kt index 668d0bbf765..3dae84eb514 100644 --- a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/expressionTypeProvider/AbstractDeclarationReturnTypeTest.kt +++ b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/components/expressionTypeProvider/AbstractDeclarationReturnTypeTest.kt @@ -16,20 +16,20 @@ abstract class AbstractDeclarationReturnTypeTest : AbstractAnalysisApiSingleFile override fun doTestByFileStructure(ktFile: KtFile, module: TestModule, testServices: TestServices) { val actual = buildString { ktFile.accept(object : KtTreeVisitor() { - override fun visitDeclaration(dclaration: KtDeclaration, indent: Int): Void? { - if (dclaration is KtTypeParameter) return null + override fun visitDeclaration(declaration: KtDeclaration, indent: Int): Void? { + if (declaration is KtTypeParameter) return null append(" ".repeat(indent)) - if (dclaration is KtClassLikeDeclaration) { - appendLine(dclaration.getNameWithPositionString()) + if (declaration is KtClassLikeDeclaration) { + appendLine(declaration.getNameWithPositionString()) } else { - analyseForTest(dclaration) { - val returnType = dclaration.getReturnKtType() - append(dclaration.getNameWithPositionString()) + analyseForTest(declaration) { + val returnType = declaration.getReturnKtType() + append(declaration.getNameWithPositionString()) append(" : ") appendLine(returnType.render()) } } - return super.visitDeclaration(dclaration, indent + 2) + return super.visitDeclaration(declaration, indent + 2) } }, 0) } diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java index 42e95b449dc..4b446ea1871 100644 --- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java +++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleDeclarationReturnTypeTestGenerated.java @@ -76,6 +76,12 @@ public class FirStandaloneNormalAnalysisSourceModuleDeclarationReturnTypeTestGen runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/overriddenMember.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt"); + } + @Test @TestMetadata("propertyAccessor.kt") public void testPropertyAccessor() throws Exception { diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java index 3fc8d897e81..b6cdca139ad 100644 --- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java +++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/expressionTypeProvider/FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerated.java @@ -142,6 +142,12 @@ public class FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerate runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/nonExpression.kt"); } + @Test + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt"); + } + @Test @TestMetadata("plusAssign.kt") public void testPlusAssign() throws Exception { diff --git a/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt b/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt new file mode 100644 index 00000000000..298278c3267 --- /dev/null +++ b/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.kt @@ -0,0 +1 @@ +fun foo() = java.lang.String.valueOf(1) \ No newline at end of file diff --git a/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.txt b/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.txt new file mode 100644 index 00000000000..eb17c2908ca --- /dev/null +++ b/analysis/analysis-api/testData/components/expressionTypeProvider/declarationReturnType/platformType.txt @@ -0,0 +1 @@ +foo@(1,1) : kotlin.String! diff --git a/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt b/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt new file mode 100644 index 00000000000..411d104f758 --- /dev/null +++ b/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.kt @@ -0,0 +1 @@ +fun foo() = java.lang.String.valueOf(1) diff --git a/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.txt b/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.txt new file mode 100644 index 00000000000..6f6ffc8e9e3 --- /dev/null +++ b/analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/platformType.txt @@ -0,0 +1,2 @@ +expression: java.lang.String.valueOf(1) +type: kotlin.String!