File tree 2 files changed +48
-10
lines changed
src/test/kotlin/com/fasterxml/jackson/module/kotlin/test/failing
2 files changed +48
-10
lines changed Original file line number Diff line number Diff line change 53
53
<javac .target.version>1.8</javac .target.version>
54
54
55
55
<version .junit>4.12</version .junit>
56
- <version .kotlin>1.3.72 </version .kotlin>
56
+ <version .kotlin>1.4.10 </version .kotlin>
57
57
58
58
<!-- Generate PackageVersion.java into this directory. -->
59
59
<packageVersion .dir>com/fasterxml/jackson/module/kotlin</packageVersion .dir>
138
138
<goals >
139
139
<goal >test-compile</goal >
140
140
</goals >
141
+ <configuration >
142
+ <args >
143
+ <arg >-Xinline-classes</arg >
144
+ </args >
145
+ </configuration >
141
146
</execution >
142
147
</executions >
143
148
</plugin >
144
149
<plugin >
145
150
<groupId >org.apache.maven.plugins</groupId >
146
151
<artifactId >maven-surefire-plugin</artifactId >
147
152
<configuration >
148
- <excludes >
149
- <exclude >com/fasterxml/jackson/**/failing/*</exclude >
150
- </excludes >
151
- </configuration >
153
+ <excludes >
154
+ <exclude >com/fasterxml/jackson/**/failing/*</exclude >
155
+ </excludes >
156
+ </configuration >
152
157
</plugin >
153
158
<plugin >
154
159
<!-- Inherited from oss-base. Generate PackageVersion.java.-->
171
176
<optimize >true</optimize >
172
177
</configuration >
173
178
</plugin >
174
- <!-- 05-Jul-2020, tatu: Add generation of Gradle Module Metadata -->
175
- <plugin >
176
- <groupId >de.jjohannes</groupId >
177
- <artifactId >gradle-module-metadata-maven-plugin</artifactId >
178
- </plugin >
179
+ <!-- 05-Jul-2020, tatu: Add generation of Gradle Module Metadata -->
180
+ <plugin >
181
+ <groupId >de.jjohannes</groupId >
182
+ <artifactId >gradle-module-metadata-maven-plugin</artifactId >
183
+ </plugin >
179
184
</plugins >
180
185
</build >
181
186
Original file line number Diff line number Diff line change
1
+ package com.fasterxml.jackson.module.kotlin.test.failing
2
+
3
+ import com.fasterxml.jackson.databind.annotation.JsonDeserialize
4
+ import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
5
+ import com.fasterxml.jackson.module.kotlin.readValue
6
+ import org.junit.Test
7
+ import kotlin.test.assertEquals
8
+
9
+ class TestGithub356 {
10
+ private val mapper = jacksonObjectMapper()
11
+
12
+ @Test
13
+ fun deserializeInlineClass () {
14
+ val original = ClassWithInlineMember (InlineClass (" bar" ))
15
+ assertEquals(original, mapper.readValue(mapper.writeValueAsString(original)))
16
+ }
17
+
18
+ @Test
19
+ fun serializeInlineClass () {
20
+ val original = ClassWithInlineMember (InlineClass (" bar" ))
21
+ assertEquals(""" {"inlineClassProperty":"bar"}""" , mapper.writeValueAsString(original))
22
+ }
23
+ }
24
+
25
+ @Suppress(" EXPERIMENTAL_FEATURE_WARNING" ) // Enabled in test-compile
26
+ inline class InlineClass (val value : String )
27
+
28
+ @JsonDeserialize(builder = ClassWithInlineMember .JacksonBuilder ::class )
29
+ data class ClassWithInlineMember (val inlineClassProperty : InlineClass ) {
30
+ data class JacksonBuilder constructor(val inlineClassProperty : String ) {
31
+ fun build () = ClassWithInlineMember (InlineClass (inlineClassProperty))
32
+ }
33
+ }
You can’t perform that action at this time.
0 commit comments