1
1
package com.fasterxml.jackson.module.kotlin.test
2
2
3
+ import com.fasterxml.jackson.annotation.JsonIgnore
3
4
import com.fasterxml.jackson.databind.ObjectMapper
4
5
import com.fasterxml.jackson.databind.SerializationFeature
6
+ import com.fasterxml.jackson.databind.json.JsonMapper
5
7
import com.fasterxml.jackson.databind.node.JsonNodeFactory
8
+ import com.fasterxml.jackson.module.kotlin.addMixIn
6
9
import com.fasterxml.jackson.module.kotlin.contains
7
10
import com.fasterxml.jackson.module.kotlin.convertValue
8
11
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
12
+ import com.fasterxml.jackson.module.kotlin.jsonMapper
9
13
import com.fasterxml.jackson.module.kotlin.minusAssign
10
14
import com.fasterxml.jackson.module.kotlin.plusAssign
11
15
import com.fasterxml.jackson.module.kotlin.readValue
@@ -82,4 +86,15 @@ class TestExtensionMethods {
82
86
val convertValueResult: List <Person > = mapper.convertValue(tree)
83
87
assertThat(convertValueResult, `is `(listOf (Person (" Neo" ))))
84
88
}
85
- }
89
+
90
+ @Test fun mixInExtensionTest () {
91
+
92
+ data class Person (val name : String )
93
+ abstract class PersonMixIn { @JsonIgnore var name: String = " " }
94
+
95
+ val mapper: JsonMapper = jsonMapper { addMixIn<Person , PersonMixIn >() }
96
+ val serializedPerson: String = mapper.writeValueAsString(Person (" test" ))
97
+
98
+ assertThat(serializedPerson, `is `(" {}" ))
99
+ }
100
+ }
0 commit comments