aboutsummaryrefslogtreecommitdiff
path: root/integration-tests/src/test/resources/kmp/workload
diff options
context:
space:
mode:
Diffstat (limited to 'integration-tests/src/test/resources/kmp/workload')
-rw-r--r--integration-tests/src/test/resources/kmp/workload/build.gradle.kts66
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/androidNativeArm64Main/kotlin/Main.kt7
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/androidNativeX64Main/kotlin/Main.kt7
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Bar.kt5
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Baz.kt5
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/ToBeValidated.kt9
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/linuxX64Main/kotlin/Main.kt7
-rw-r--r--integration-tests/src/test/resources/kmp/workload/src/linuxX64Test/kotlin/MyTest.kt3
8 files changed, 109 insertions, 0 deletions
diff --git a/integration-tests/src/test/resources/kmp/workload/build.gradle.kts b/integration-tests/src/test/resources/kmp/workload/build.gradle.kts
new file mode 100644
index 00000000..f0ba36f1
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/build.gradle.kts
@@ -0,0 +1,66 @@
+plugins {
+ kotlin("multiplatform")
+ id("com.google.devtools.ksp")
+}
+
+version = "1.0-SNAPSHOT"
+
+kotlin {
+ jvm {
+ withJava()
+ }
+ js(BOTH) {
+ browser()
+ nodejs()
+ }
+ linuxX64() {
+ binaries {
+ executable()
+ }
+ }
+ androidNativeX64() {
+ binaries {
+ executable()
+ }
+ }
+ androidNativeArm64() {
+ binaries {
+ executable()
+ }
+ }
+ // TODO: Enable after CI's Xcode version catches up.
+ // iosArm64()
+ // macosX64()
+ mingwX64()
+ sourceSets {
+ val commonMain by getting {
+ dependencies {
+ implementation(project(":annotations"))
+ }
+ }
+ val linuxX64Main by getting
+ val linuxX64Test by getting
+ val androidNativeX64Main by getting
+ val androidNativeArm64Main by getting
+ }
+}
+
+tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
+ kotlinOptions.freeCompilerArgs += "-Xuse-deprecated-legacy-compiler"
+}
+
+dependencies {
+ add("kspCommonMainMetadata", project(":test-processor"))
+ add("kspJvm", project(":test-processor"))
+ add("kspJvmTest", project(":test-processor"))
+ add("kspJs", project(":test-processor"))
+ add("kspJsTest", project(":test-processor"))
+ add("kspAndroidNativeX64", project(":test-processor"))
+ add("kspAndroidNativeX64Test", project(":test-processor"))
+ add("kspAndroidNativeArm64", project(":test-processor"))
+ add("kspAndroidNativeArm64Test", project(":test-processor"))
+ add("kspLinuxX64", project(":test-processor"))
+ add("kspLinuxX64Test", project(":test-processor"))
+ add("kspMingwX64", project(":test-processor"))
+ add("kspMingwX64Test", project(":test-processor"))
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/androidNativeArm64Main/kotlin/Main.kt b/integration-tests/src/test/resources/kmp/workload/src/androidNativeArm64Main/kotlin/Main.kt
new file mode 100644
index 00000000..bf7bfe3e
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/androidNativeArm64Main/kotlin/Main.kt
@@ -0,0 +1,7 @@
+import com.example.Bar
+import com.example.Foo
+
+fun main() {
+ println(Bar().toString())
+ println(Foo().toString())
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/androidNativeX64Main/kotlin/Main.kt b/integration-tests/src/test/resources/kmp/workload/src/androidNativeX64Main/kotlin/Main.kt
new file mode 100644
index 00000000..bf7bfe3e
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/androidNativeX64Main/kotlin/Main.kt
@@ -0,0 +1,7 @@
+import com.example.Bar
+import com.example.Foo
+
+fun main() {
+ println(Bar().toString())
+ println(Foo().toString())
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Bar.kt b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Bar.kt
new file mode 100644
index 00000000..480d3cb2
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Bar.kt
@@ -0,0 +1,5 @@
+package com.example
+
+class Bar {
+ val baz = Foo().baz
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Baz.kt b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Baz.kt
new file mode 100644
index 00000000..83015598
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/Baz.kt
@@ -0,0 +1,5 @@
+package com.example
+
+class Baz {
+ val bar = Foo().bar
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/ToBeValidated.kt b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/ToBeValidated.kt
new file mode 100644
index 00000000..05497afb
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/commonMain/kotlin/com/example/ToBeValidated.kt
@@ -0,0 +1,9 @@
+package com.example
+
+// https://github.com/google/ksp/issues/632
+@MyAnnotation
+@ExperimentalMultiplatform
+class ToBeValidated {
+ // https://github.com/google/ksp/issues/574
+ val ToBeInferred = listOf("string")
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/linuxX64Main/kotlin/Main.kt b/integration-tests/src/test/resources/kmp/workload/src/linuxX64Main/kotlin/Main.kt
new file mode 100644
index 00000000..bf7bfe3e
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/linuxX64Main/kotlin/Main.kt
@@ -0,0 +1,7 @@
+import com.example.Bar
+import com.example.Foo
+
+fun main() {
+ println(Bar().toString())
+ println(Foo().toString())
+}
diff --git a/integration-tests/src/test/resources/kmp/workload/src/linuxX64Test/kotlin/MyTest.kt b/integration-tests/src/test/resources/kmp/workload/src/linuxX64Test/kotlin/MyTest.kt
new file mode 100644
index 00000000..836f9f2b
--- /dev/null
+++ b/integration-tests/src/test/resources/kmp/workload/src/linuxX64Test/kotlin/MyTest.kt
@@ -0,0 +1,3 @@
+@com.example.MyAnnotation
+@ExperimentalMultiplatform
+class MyTest