[FIR] fix NPE on missing java annotations qualifier

^KTIJ-23075 fixed
This commit is contained in:
Ilya Kirillov
2022-12-09 13:05:22 +01:00
committed by Space Team
parent f07f7885c5
commit 68a17242b3
16 changed files with 128 additions and 3 deletions
@@ -94,6 +94,12 @@ public class Fe10IdeNormalAnalysisSourceModuleSymbolByReferenceTestGenerated ext
runTest("analysis/analysis-api/testData/symbols/symbolByReference/implicitLambdaParameter.kt");
}
@Test
@TestMetadata("javaClassWithEmptyAnnotationName.kt")
public void testJavaClassWithEmptyAnnotationName() throws Exception {
runTest("analysis/analysis-api/testData/symbols/symbolByReference/javaClassWithEmptyAnnotationName.kt");
}
@Test
@TestMetadata("javaField.kt")
public void testJavaField() throws Exception {
@@ -94,6 +94,12 @@ public class FirIdeNormalAnalysisSourceModuleSymbolByReferenceTestGenerated exte
runTest("analysis/analysis-api/testData/symbols/symbolByReference/implicitLambdaParameter.kt");
}
@Test
@TestMetadata("javaClassWithEmptyAnnotationName.kt")
public void testJavaClassWithEmptyAnnotationName() throws Exception {
runTest("analysis/analysis-api/testData/symbols/symbolByReference/javaClassWithEmptyAnnotationName.kt");
}
@Test
@TestMetadata("javaField.kt")
public void testJavaField() throws Exception {
@@ -94,6 +94,12 @@ public class FirStandaloneNormalAnalysisSourceModuleSymbolByReferenceTestGenerat
runTest("analysis/analysis-api/testData/symbols/symbolByReference/implicitLambdaParameter.kt");
}
@Test
@TestMetadata("javaClassWithEmptyAnnotationName.kt")
public void testJavaClassWithEmptyAnnotationName() throws Exception {
runTest("analysis/analysis-api/testData/symbols/symbolByReference/javaClassWithEmptyAnnotationName.kt");
}
@Test
@TestMetadata("javaField.kt")
public void testJavaField() throws Exception {
@@ -0,0 +1,2 @@
@`<Error class: unknown class>`
open class JavaClass
@@ -0,0 +1,25 @@
KtNamedClassOrObjectSymbol:
annotationsList: [
<Error class: unknown class>()
psi: null
]
classIdIfNonLocal: JavaClass
classKind: CLASS
companionObject: null
contextReceivers: []
isData: false
isExternal: false
isFun: false
isInline: false
isInner: false
modality: OPEN
name: JavaClass
origin: JAVA
superTypes: [
kotlin/Any
]
symbolKind: TOP_LEVEL
typeParameters: []
visibility: Public
getContainingModule: KtSourceModule "Sources of main"
deprecationStatus: null
@@ -0,0 +1,10 @@
// FILE: main.kt
fun main() {
val j: Java<caret>Class = JavaClass()
}
// FILE: JavaClass.java
@()
public class JavaClass {}
@@ -0,0 +1,2 @@
@`<error>`
open class JavaClass
@@ -0,0 +1,2 @@
@`<error>`
open class JavaClass
@@ -0,0 +1,25 @@
KtNamedClassOrObjectSymbol:
annotationsList: [
<error>()
psi: null
]
classIdIfNonLocal: JavaClass
classKind: CLASS
companionObject: null
contextReceivers: []
isData: false
isExternal: false
isFun: false
isInline: false
isInner: false
modality: OPEN
name: JavaClass
origin: JAVA
superTypes: [
kotlin/Any
]
symbolKind: TOP_LEVEL
typeParameters: []
visibility: Public
getContainingModule: KtSourceModule "Sources of main"
deprecationStatus: null
@@ -3431,6 +3431,12 @@ public class DiagnosisCompilerFirTestdataTestGenerated extends AbstractDiagnosis
runTest("compiler/fir/analysis-tests/testData/resolve/problems/innerClassHierarchy.kt");
}
@Test
@TestMetadata("javaClassWithEmptyAnnotationName.kt")
public void testJavaClassWithEmptyAnnotationName() throws Exception {
runTest("compiler/fir/analysis-tests/testData/resolve/problems/javaClassWithEmptyAnnotationName.kt");
}
@Test
@TestMetadata("javaQualifier.kt")
public void testJavaQualifier() throws Exception {