aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTing-Yuan Huang <laszio@google.com>2023-11-03 15:46:49 -0700
committerKSP Auto Pick <kotlin-symbol-processing@google.com>2023-11-07 19:37:14 +0000
commiteced0d1691407b81167ea37ffda86876084a0729 (patch)
treef8a795069c63b13430a08755e69afcdf6ec40ff8
parentdb37774855a35e64c2061263cd59f716f1cdd758 (diff)
downloadksp-eced0d1691407b81167ea37ffda86876084a0729.tar.gz
Tests: do not depend on declaration orders
(cherry picked from commit 1c124dff815274cd8583d96d7131e1f28c0d177a)
-rw-r--r--test-utils/src/main/kotlin/com/google/devtools/ksp/processor/OverrideeProcessor.kt4
-rw-r--r--test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ThrowListProcessor.kt14
-rw-r--r--test-utils/testData/api/overridee/javaOverrideInSource.kt10
-rw-r--r--test-utils/testData/api/overridee/noOverride.kt2
-rw-r--r--test-utils/testData/api/overridee/overrideInSource.kt18
-rw-r--r--test-utils/testData/api/throwList.kt2
6 files changed, 25 insertions, 25 deletions
diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/OverrideeProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/OverrideeProcessor.kt
index 40d11cf1..1fcccc4c 100644
--- a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/OverrideeProcessor.kt
+++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/OverrideeProcessor.kt
@@ -56,11 +56,11 @@ class OverrideeProcessor : AbstractTestProcessor() {
}
private fun logClass(subject: KSClassDeclaration) {
- subject.declarations.filterIsInstance<KSPropertyDeclaration>()
+ subject.declarations.filterIsInstance<KSPropertyDeclaration>().sortedBy { it.simpleName.asString() }
.forEach {
checkOverridee(it)
}
- subject.declarations.filterIsInstance<KSFunctionDeclaration>()
+ subject.declarations.filterIsInstance<KSFunctionDeclaration>().sortedBy { it.simpleName.asString() }
.filterNot { it.simpleName.asString() in IGNORED_METHOD_NAMES }
.forEach {
checkOverridee(it)
diff --git a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ThrowListProcessor.kt b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ThrowListProcessor.kt
index 8750151b..3a5fc9ec 100644
--- a/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ThrowListProcessor.kt
+++ b/test-utils/src/main/kotlin/com/google/devtools/ksp/processor/ThrowListProcessor.kt
@@ -43,25 +43,25 @@ class ThrowListProcessor : AbstractTestProcessor() {
val klib = resolver.getClassDeclarationByName("KtLib")!!
klib.declarations.filter { it.simpleName.asString() == "throwsLibKt" }.map {
resolver.getJvmCheckedException(it as KSFunctionDeclaration).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
klib.declarations.filter { it.simpleName.asString() == "getterThrows" }.map {
resolver.getJvmCheckedException((it as KSPropertyDeclaration).getter!!).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
klib.declarations.filter { it.simpleName.asString() == "setterThrows" }.map {
resolver.getJvmCheckedException((it as KSPropertyDeclaration).setter!!).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
klib.declarations.filter { it.simpleName.asString() == "bothThrows" }.map {
resolver.getJvmCheckedException((it as KSPropertyDeclaration).getter!!).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
klib.declarations.filter { it.simpleName.asString() == "bothThrows" }.map {
resolver.getJvmCheckedException((it as KSPropertyDeclaration).setter!!).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
jlib.declarations.filter { it.simpleName.asString() == "foo" }.map {
resolver.getJvmCheckedException(it as KSFunctionDeclaration).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
jlib.getConstructors().map {
resolver.getJvmCheckedException(it).toResult()
- }.forEach { result.add(it) }
+ }.sorted().forEach { result.add(it) }
return emptyList()
}
diff --git a/test-utils/testData/api/overridee/javaOverrideInSource.kt b/test-utils/testData/api/overridee/javaOverrideInSource.kt
index da413fda..d053bc62 100644
--- a/test-utils/testData/api/overridee/javaOverrideInSource.kt
+++ b/test-utils/testData/api/overridee/javaOverrideInSource.kt
@@ -19,15 +19,15 @@
// TEST PROCESSOR: OverrideeProcessor
// EXPECTED:
// JavaSubject.Subject:
-// Subject.openFun() -> Base.openFun()
// Subject.abstractFun() -> Base.abstractFun()
-// Subject.openFunWithGenericArg(t:String) -> Base.openFunWithGenericArg(t:T)
// Subject.abstractFunWithGenericArg(t:String) -> Base.abstractFunWithGenericArg(t:T)
+// Subject.abstractGrandBaseFun() -> GrandBase.abstractGrandBaseFun()
// Subject.nonOverridingMethod() -> null
-// Subject.overriddenGrandBaseFun() -> Base.overriddenGrandBaseFun()
-// Subject.overriddenAbstractGrandBaseFun() -> Base.overriddenAbstractGrandBaseFun()
+// Subject.openFun() -> Base.openFun()
+// Subject.openFunWithGenericArg(t:String) -> Base.openFunWithGenericArg(t:T)
// Subject.openGrandBaseFun() -> GrandBase.openGrandBaseFun()
-// Subject.abstractGrandBaseFun() -> GrandBase.abstractGrandBaseFun()
+// Subject.overriddenAbstractGrandBaseFun() -> Base.overriddenAbstractGrandBaseFun()
+// Subject.overriddenGrandBaseFun() -> Base.overriddenGrandBaseFun()
// Subject.staticMethod() -> null
// END
diff --git a/test-utils/testData/api/overridee/noOverride.kt b/test-utils/testData/api/overridee/noOverride.kt
index 659a73d3..8e3eab3b 100644
--- a/test-utils/testData/api/overridee/noOverride.kt
+++ b/test-utils/testData/api/overridee/noOverride.kt
@@ -19,8 +19,8 @@
// TEST PROCESSOR: OverrideeProcessor
// EXPECTED:
// NoOverride:
-// NoOverride.propInParam -> null
// NoOverride.prop -> null
+// NoOverride.propInParam -> null
// NoOverride.func(param:Int) -> null
// END
diff --git a/test-utils/testData/api/overridee/overrideInSource.kt b/test-utils/testData/api/overridee/overrideInSource.kt
index d44f8056..b3f83b75 100644
--- a/test-utils/testData/api/overridee/overrideInSource.kt
+++ b/test-utils/testData/api/overridee/overrideInSource.kt
@@ -20,22 +20,22 @@
// EXPECTED:
// Subject:
// Companion.companionMethod() -> null
+// Subject.abstractGrandBaseProp -> GrandBase.abstractGrandBaseProp
// Subject.notOverridingProp -> null
-// Subject.overriddenBaseProp -> Base.overriddenBaseProp
-// Subject.overriddenAbstractBaseProp -> Base.overriddenAbstractBaseProp
// Subject.openGrandBaseProp -> GrandBase.openGrandBaseProp
-// Subject.abstractGrandBaseProp -> GrandBase.abstractGrandBaseProp
-// Subject.overriddenGrandBaseProp -> Base.overriddenGrandBaseProp
+// Subject.overriddenAbstractBaseProp -> Base.overriddenAbstractBaseProp
// Subject.overriddenAbstractGrandBaseProp -> Base.overriddenAbstractGrandBaseProp
-// Subject.openFun() -> Base.openFun()
+// Subject.overriddenBaseProp -> Base.overriddenBaseProp
+// Subject.overriddenGrandBaseProp -> Base.overriddenGrandBaseProp
// Subject.abstractFun() -> Base.abstractFun()
-// Subject.openFunWithGenericArg(t:String) -> Base.openFunWithGenericArg(t:T)
// Subject.abstractFunWithGenericArg(t:String) -> Base.abstractFunWithGenericArg(t:T)
+// Subject.abstractGrandBaseFun() -> GrandBase.abstractGrandBaseFun()
// Subject.nonOverridingMethod() -> null
-// Subject.overriddenGrandBaseFun() -> Base.overriddenGrandBaseFun()
-// Subject.overriddenAbstractGrandBaseFun() -> Base.overriddenAbstractGrandBaseFun()
+// Subject.openFun() -> Base.openFun()
+// Subject.openFunWithGenericArg(t:String) -> Base.openFunWithGenericArg(t:T)
// Subject.openGrandBaseFun() -> GrandBase.openGrandBaseFun()
-// Subject.abstractGrandBaseFun() -> GrandBase.abstractGrandBaseFun()
+// Subject.overriddenAbstractGrandBaseFun() -> Base.overriddenAbstractGrandBaseFun()
+// Subject.overriddenGrandBaseFun() -> Base.overriddenGrandBaseFun()
// END
// FILE: a.kt
diff --git a/test-utils/testData/api/throwList.kt b/test-utils/testData/api/throwList.kt
index 56431756..2152e88f 100644
--- a/test-utils/testData/api/throwList.kt
+++ b/test-utils/testData/api/throwList.kt
@@ -30,8 +30,8 @@
// java.io.IOException
// java.lang.IllegalStateException,java.lang.IllegalArgumentException
// java.io.IOException
-// java.lang.IndexOutOfBoundsException
// java.io.IOException,java.lang.IndexOutOfBoundsException
+// java.lang.IndexOutOfBoundsException
// java.io.IOException
// END
// MODULE: lib