From 7b6a371c5c22cbd0fafdf3a154afd43ad1bb7b6b Mon Sep 17 00:00:00 2001 From: wrongwrong Date: Sun, 10 Nov 2024 23:36:09 +0900 Subject: [PATCH] Porting #817 https://github.com/FasterXML/jackson-module-kotlin/pull/817 --- .../jackson/module/kogera/Extensions.kt | 2 +- .../kogera/zPorted/test/github/GitHub757.kt | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/test/kotlin/io/github/projectmapk/jackson/module/kogera/zPorted/test/github/GitHub757.kt diff --git a/src/main/kotlin/io/github/projectmapk/jackson/module/kogera/Extensions.kt b/src/main/kotlin/io/github/projectmapk/jackson/module/kogera/Extensions.kt index 2ddaab50..40dbb4a7 100644 --- a/src/main/kotlin/io/github/projectmapk/jackson/module/kogera/Extensions.kt +++ b/src/main/kotlin/io/github/projectmapk/jackson/module/kogera/Extensions.kt @@ -62,7 +62,7 @@ public inline fun ObjectMapper.readValue(src: ByteArray): T = readVa public inline fun ObjectMapper.treeToValue(n: TreeNode): T = readValue(this.treeAsTokens(n), jacksonTypeRef()) -public inline fun ObjectMapper.convertValue(from: Any): T = convertValue(from, jacksonTypeRef()) +public inline fun ObjectMapper.convertValue(from: Any?): T = convertValue(from, jacksonTypeRef()) public inline fun ObjectReader.readValueTyped(jp: JsonParser): T = readValue(jp, jacksonTypeRef()) public inline fun ObjectReader.readValuesTyped(jp: JsonParser): Iterator = diff --git a/src/test/kotlin/io/github/projectmapk/jackson/module/kogera/zPorted/test/github/GitHub757.kt b/src/test/kotlin/io/github/projectmapk/jackson/module/kogera/zPorted/test/github/GitHub757.kt new file mode 100644 index 00000000..a01f5ea8 --- /dev/null +++ b/src/test/kotlin/io/github/projectmapk/jackson/module/kogera/zPorted/test/github/GitHub757.kt @@ -0,0 +1,22 @@ +package io.github.projectmapk.jackson.module.kogera.zPorted.test.github + +import com.fasterxml.jackson.databind.json.JsonMapper +import io.github.projectmapk.jackson.module.kogera.KotlinFeature +import io.github.projectmapk.jackson.module.kogera.KotlinModule +import io.github.projectmapk.jackson.module.kogera.convertValue +import org.junit.jupiter.api.Assertions.assertNull +import org.junit.jupiter.api.Test + +class GitHub757 { + @Test + fun test() { + val kotlinModule = KotlinModule.Builder() + .enable(KotlinFeature.StrictNullChecks) + .build() + val mapper = JsonMapper.builder() + .addModule(kotlinModule) + .build() + val convertValue = mapper.convertValue(null) + assertNull(convertValue) + } +}