[FIR] Test for duplicate filtering for overrides from Java
This commit is contained in:
committed by
Space Team
parent
f7dea5bd70
commit
564d44b16d
+6
@@ -46,6 +46,12 @@ public class Fe10IdeNormalAnalysisSourceModuleOverriddenDeclarationProviderTestG
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("arraylistSubtype.kt")
|
||||
public void testArraylistSubtype() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols/arraylistSubtype.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("backingField.kt")
|
||||
public void testBackingField() throws Exception {
|
||||
|
||||
+6
@@ -46,6 +46,12 @@ public class FirIdeDependentAnalysisSourceModuleOverriddenDeclarationProviderTes
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("arraylistSubtype.kt")
|
||||
public void testArraylistSubtype() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols/arraylistSubtype.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("backingField.kt")
|
||||
public void testBackingField() throws Exception {
|
||||
|
||||
+6
@@ -46,6 +46,12 @@ public class FirIdeNormalAnalysisSourceModuleOverriddenDeclarationProviderTestGe
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("arraylistSubtype.kt")
|
||||
public void testArraylistSubtype() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols/arraylistSubtype.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("backingField.kt")
|
||||
public void testBackingField() throws Exception {
|
||||
|
||||
+11
-7
@@ -63,13 +63,17 @@ abstract class AbstractOverriddenDeclarationProviderTest : AbstractAnalysisApiBa
|
||||
private fun KtAnalysisSession.getPath(symbol: KtCallableSymbol): String = when (symbol) {
|
||||
is KtSyntheticJavaPropertySymbol -> symbol.callableIdIfNonLocal?.toString()!!
|
||||
else -> {
|
||||
val ktDeclaration = symbol.psi as KtDeclaration
|
||||
ktDeclaration
|
||||
.parentsOfType<KtDeclaration>(withSelf = true)
|
||||
.map { it.name ?: "<no name>" }
|
||||
.toList()
|
||||
.asReversed()
|
||||
.joinToString(separator = ".")
|
||||
val ktDeclaration = symbol.psi as? KtDeclaration
|
||||
if (ktDeclaration == null) {
|
||||
symbol.callableIdIfNonLocal?.toString()!!
|
||||
} else {
|
||||
ktDeclaration
|
||||
.parentsOfType<KtDeclaration>(withSelf = true)
|
||||
.map { it.name ?: "<no name>" }
|
||||
.toList()
|
||||
.asReversed()
|
||||
.joinToString(separator = ".")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+6
@@ -46,6 +46,12 @@ public class FirStandaloneNormalAnalysisSourceModuleOverriddenDeclarationProvide
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols"), Pattern.compile("^(.+)\\.kt$"), null, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("arraylistSubtype.kt")
|
||||
public void testArraylistSubtype() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/symbolDeclarationOverridesProvider/overriddenSymbols/arraylistSubtype.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("backingField.kt")
|
||||
public void testBackingField() throws Exception {
|
||||
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
ALL:
|
||||
java/util/ArrayList.size: Int
|
||||
java/util/AbstractCollection.size: Int
|
||||
kotlin/collections/List.size: Int
|
||||
kotlin/collections/Collection.size: Int
|
||||
DIRECT:
|
||||
java/util/ArrayList.size: Int
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
class MyList : ArrayList<Int>() {
|
||||
override val size<caret>: Int = 0
|
||||
override fun get(index: Int): Int = 0
|
||||
}
|
||||
|
||||
// RESULT
|
||||
// ALL:
|
||||
// java/util/ArrayList.size: Int
|
||||
// java/util/AbstractList.size: Int
|
||||
// java/util/AbstractCollection.size: Int
|
||||
// List.size: Int
|
||||
// Collection.size: Int
|
||||
|
||||
// DIRECT:
|
||||
// java/util/ArrayList.size: Int
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
ALL:
|
||||
java/util/ArrayList.size: Int
|
||||
java/util/AbstractList.size: Int
|
||||
java/util/AbstractCollection.size: Int
|
||||
List.size: Int
|
||||
Collection.size: Int
|
||||
DIRECT:
|
||||
java/util/ArrayList.size: Int
|
||||
Reference in New Issue
Block a user