Skip to content

Commit e9d5bbc

Browse files
committed
Merge branch 'release/0.0.3'
2 parents a2d8f2a + 6144675 commit e9d5bbc

File tree

101 files changed

+1014
-550
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+1014
-550
lines changed

_itest/builder-itest/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.toolisticon.kotlin.generation._</groupId>
77
<artifactId>kotlin-code-generation-itest-root</artifactId>
8-
<version>0.0.2</version>
8+
<version>0.0.3</version>
99
</parent>
1010

1111
<groupId>io.toolisticon.kotlin.generation.itest</groupId>
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
package io.toolisticon.kotlin.generation.itest
22

3-
object KotlinCodeGenerationITest {
3+
object KotlinCodeGenerationITestConfig {
44
const val ROOT_PACKAGE = "io.toolisticon.kotlin.generation.itest.created"
55
}

_itest/builder-itest/src/main/kotlin/MyCustomAnnotationSpec.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1+
@file:OptIn(ExperimentalKotlinPoetApi::class)
2+
13
package io.toolisticon.kotlin.generation.itest
24

35
import com.squareup.kotlinpoet.ClassName
46
import com.squareup.kotlinpoet.ExperimentalKotlinPoetApi
57
import io.toolisticon.kotlin.generation.KotlinCodeGeneration.buildAnnotationClass
68
import io.toolisticon.kotlin.generation.KotlinCodeGeneration.buildFile
7-
import io.toolisticon.kotlin.generation.itest.KotlinCodeGenerationITest.ROOT_PACKAGE
9+
import io.toolisticon.kotlin.generation.itest.KotlinCodeGenerationITestConfig.ROOT_PACKAGE
10+
811

9-
@ExperimentalKotlinPoetApi
1012
object MyCustomAnnotationSpec {
1113
val name = ClassName(ROOT_PACKAGE, "MyCustomAnnotation")
1214

_itest/builder-itest/src/test/kotlin/HelloWorldExampleTest.kt renamed to _itest/builder-itest/src/test/kotlin/HelloWorldExampleITest.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
@file:OptIn(ExperimentalKotlinPoetApi::class, ExperimentalCompilerApi::class)
2+
13
package io.toolisticon.kotlin.generation.itest
24

35
import com.squareup.kotlinpoet.ClassName
@@ -12,9 +14,7 @@ import org.assertj.core.api.Assertions.assertThat
1214
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
1315
import org.junit.jupiter.api.Test
1416

15-
@ExperimentalKotlinPoetApi
16-
@ExperimentalCompilerApi
17-
internal class HelloWorldExampleTest {
17+
internal class HelloWorldExampleITest {
1818

1919
@Test
2020
fun `hello world from kotlin poet talk`() {

_itest/builder-itest/src/test/kotlin/KotlinAnnotationSpecTest.kt

Lines changed: 0 additions & 11 deletions
This file was deleted.

_itest/builder-itest/src/test/kotlin/KotlinClassBuilderTest.kt

Lines changed: 0 additions & 15 deletions
This file was deleted.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
@file:OptIn(ExperimentalKotlinPoetApi::class, ExperimentalCompilerApi::class, ExperimentalKotlinPoetApi::class)
2+
3+
package io.toolisticon.kotlin.generation.itest
4+
5+
import com.squareup.kotlinpoet.ClassName
6+
import com.squareup.kotlinpoet.ExperimentalKotlinPoetApi
7+
import com.squareup.kotlinpoet.asTypeName
8+
import com.tschuchort.compiletesting.KotlinCompilation
9+
import io.toolisticon.kotlin.generation.KotlinCodeGeneration.buildDataClass
10+
import io.toolisticon.kotlin.generation.spec.toFileSpec
11+
import io.toolisticon.kotlin.generation.test.KotlinCodeGenerationTest
12+
import io.toolisticon.kotlin.generation.test.model.KotlinCompilationCommand
13+
import org.assertj.core.api.Assertions.assertThat
14+
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
15+
import org.junit.jupiter.api.Test
16+
import kotlin.reflect.full.primaryConstructor
17+
import io.toolisticon.kotlin.generation.test.KotlinCodeGenerationTest.assertThat as compileAssertThat
18+
19+
internal class KotlinDataClassSpecITest {
20+
21+
@Test
22+
fun `create simple data class`() {
23+
val className = ClassName("foo.bar", "Bar")
24+
25+
val spec = buildDataClass(className) {
26+
addConstructorProperty("name", String::class.asTypeName())
27+
addConstructorProperty("age", Int::class.asTypeName())
28+
}
29+
30+
val file = spec.toFileSpec()
31+
32+
val result = KotlinCodeGenerationTest.compile(KotlinCompilationCommand(file))
33+
34+
compileAssertThat(result).errorMessages().isEmpty()
35+
compileAssertThat(result).hasExitCode(KotlinCompilation.ExitCode.OK)
36+
37+
val klass = result.loadClass(className)
38+
assertThat(klass.primaryConstructor!!.call("hello world", 25))
39+
.hasToString("Bar(name=hello world, age=25)")
40+
}
41+
42+
}

_itest/builder-itest/src/test/kotlin/KotlinDataClassSpecTest.kt

Lines changed: 0 additions & 39 deletions
This file was deleted.

_itest/builder-itest/src/test/kotlin/KotlinFileSpecTest.kt renamed to _itest/builder-itest/src/test/kotlin/KotlinFileSpecITest.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
1+
@file:OptIn(ExperimentalKotlinPoetApi::class, ExperimentalCompilerApi::class)
12
package io.toolisticon.kotlin.generation.itest
23

34
import com.squareup.kotlinpoet.ClassName
45
import com.squareup.kotlinpoet.ExperimentalKotlinPoetApi
56
import com.squareup.kotlinpoet.FileSpec
67
import io.toolisticon.kotlin.generation.builder.KotlinFileSpecBuilder
8+
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
79
import org.junit.jupiter.api.Test
810

9-
@ExperimentalKotlinPoetApi
10-
internal class KotlinFileSpecTest {
11+
internal class KotlinFileSpecITest {
1112

1213
@Target(AnnotationTarget.FILE)
1314
annotation class Foo

_itest/builder-itest/src/test/kotlin/KotlinValueClassIT.kt

Lines changed: 0 additions & 59 deletions
This file was deleted.

0 commit comments

Comments
 (0)