Skip to content

Commit

Permalink
Import test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
k163377 committed May 6, 2023
1 parent 992b46a commit 46303a8
Showing 1 changed file with 39 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
package com.fasterxml.jackson.module.kotlin._ported.test

import com.fasterxml.jackson.core.JsonGenerator
import com.fasterxml.jackson.databind.SerializerProvider
import com.fasterxml.jackson.databind.annotation.JsonSerialize
import com.fasterxml.jackson.databind.ser.std.StdSerializer
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.fasterxml.jackson.module.kotlin.readValue
import org.junit.jupiter.api.Assertions.assertEquals
Expand Down Expand Up @@ -41,4 +45,39 @@ class TestSequenceDeserializer {
val result = objectMapper.writeValueAsString(data)
assertEquals("{\"value\":[]}", result)
}

class ContentSer : StdSerializer<String>(String::class.java) {
override fun serialize(value: String, gen: JsonGenerator, provider: SerializerProvider) {
provider.defaultSerializeValue("$value-ser", gen)
}
}

data class ListWrapper(
@JsonSerialize(contentUsing = ContentSer::class) val value: List<String>
)

data class SequenceWrapper(
@JsonSerialize(contentUsing = ContentSer::class)
val value: Sequence<String>
)

@Test
fun contentUsingTest() {
val mapper = jacksonObjectMapper()

val listResult = mapper.writeValueAsString(ListWrapper(listOf("foo")))
val sequenceResult = mapper.writeValueAsString(SequenceWrapper(sequenceOf("foo")))

assertEquals("""{"value":["foo-ser"]}""", sequenceResult)
assertEquals(listResult, sequenceResult)
}

// @see #674
@Test
fun sequenceOfTest() {
val mapper = jacksonObjectMapper()
val result = mapper.writeValueAsString(sequenceOf("foo"))

assertEquals("""["foo"]""", result)
}
}

0 comments on commit 46303a8

Please sign in to comment.