Polishing
See gh-32074
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 the original author or authors.
|
||||
* Copyright 2002-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 the original author or authors.
|
||||
* Copyright 2002-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -69,23 +69,44 @@ class KotlinSerializationJsonDecoderTests : AbstractDecoderTests<KotlinSerializa
|
||||
|
||||
@Test
|
||||
override fun decode() {
|
||||
val output = decoder.decode(Mono.empty(), ResolvableType.forClass(Pojo::class.java), null, emptyMap())
|
||||
StepVerifier
|
||||
.create(output)
|
||||
.expectError(UnsupportedOperationException::class.java)
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun decodeStream() {
|
||||
val input = Flux.concat(
|
||||
stringBuffer("{\"bar\":\"b1\",\"foo\":\"f1\"}\n"),
|
||||
stringBuffer("{\"bar\":\"b2\",\"foo\":\"f2\"}\n")
|
||||
)
|
||||
|
||||
testDecodeAll(input, ResolvableType.forClass(Pojo::class.java), { step: FirstStep<Any> ->
|
||||
step
|
||||
.expectNext(Pojo("f1", "b1"))
|
||||
testDecodeAll(input, ResolvableType.forClass(Pojo::class.java), {
|
||||
it.expectNext(Pojo("f1", "b1"))
|
||||
.expectNext(Pojo("f2", "b2"))
|
||||
.expectComplete()
|
||||
.verify()
|
||||
}, null, null)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun decodeStreamWithSingleBuffer() {
|
||||
val input = Flux.concat(
|
||||
stringBuffer("{\"bar\":\"b1\",\"foo\":\"f1\"}\n{\"bar\":\"b2\",\"foo\":\"f2\"}\n"),
|
||||
)
|
||||
|
||||
testDecodeAll(input, ResolvableType.forClass(Pojo::class.java), {
|
||||
it.expectNext(Pojo("f1", "b1"))
|
||||
.expectNext(Pojo("f2", "b2"))
|
||||
.expectComplete()
|
||||
.verify()
|
||||
}, null, null)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun decodeStreamWithMultipleBuffersPerElement() {
|
||||
val input = Flux.concat(
|
||||
stringBuffer("{\"bar\":\"b1\","),
|
||||
stringBuffer("\"foo\":\"f1\"}\n"),
|
||||
stringBuffer("{\""),
|
||||
stringBuffer("bar\":\"b2\",\"foo\":\"f2\"}\n")
|
||||
)
|
||||
|
||||
testDecodeAll(input, ResolvableType.forClass(Pojo::class.java), {
|
||||
it.expectNext(Pojo("f1", "b1"))
|
||||
.expectNext(Pojo("f2", "b2"))
|
||||
.expectComplete()
|
||||
.verify()
|
||||
@@ -100,11 +121,10 @@ class KotlinSerializationJsonDecoderTests : AbstractDecoderTests<KotlinSerializa
|
||||
|
||||
val elementType = ResolvableType.forClassWithGenerics(List::class.java, Pojo::class.java)
|
||||
|
||||
testDecodeToMonoAll(input, elementType, { step: FirstStep<Any> ->
|
||||
step
|
||||
.expectNext(listOf(Pojo("f1", "b1"), Pojo("f2", "b2")))
|
||||
.expectComplete()
|
||||
.verify()
|
||||
testDecodeToMonoAll(input, elementType, {
|
||||
it.expectNext(listOf(Pojo("f1", "b1"), Pojo("f2", "b2")))
|
||||
.expectComplete()
|
||||
.verify()
|
||||
}, null, null)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 the original author or authors.
|
||||
* Copyright 2002-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -69,30 +69,30 @@ class KotlinSerializationJsonEncoderTests : AbstractEncoderTests<KotlinSerializa
|
||||
Pojo("foofoo", "barbar"),
|
||||
Pojo("foofoofoo", "barbarbar")
|
||||
)
|
||||
testEncode(input, Pojo::class.java, { step: FirstStep<DataBuffer?> -> step
|
||||
.consumeNextWith(expectString("[" +
|
||||
"{\"foo\":\"foo\",\"bar\":\"bar\"}," +
|
||||
"{\"foo\":\"foofoo\",\"bar\":\"barbar\"}," +
|
||||
"{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}]")
|
||||
.andThen { dataBuffer: DataBuffer? -> DataBufferUtils.release(dataBuffer) })
|
||||
.verifyComplete()
|
||||
})
|
||||
testEncode(input, Pojo::class.java) {
|
||||
it.consumeNextWith(expectString("[" +
|
||||
"{\"foo\":\"foo\",\"bar\":\"bar\"}," +
|
||||
"{\"foo\":\"foofoo\",\"bar\":\"barbar\"}," +
|
||||
"{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}]")
|
||||
.andThen { dataBuffer -> DataBufferUtils.release(dataBuffer) })
|
||||
.verifyComplete()
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun encodeStream() {
|
||||
val input = Flux.just(
|
||||
Pojo("foo", "bar"),
|
||||
Pojo("foofoo", "barbar"),
|
||||
Pojo("foofoofoo", "barbarbar")
|
||||
Pojo("foo", "bar"),
|
||||
Pojo("foofoo", "barbar"),
|
||||
Pojo("foofoofoo", "barbarbar")
|
||||
)
|
||||
testEncodeAll(
|
||||
input,
|
||||
ResolvableType.forClass(Pojo::class.java),
|
||||
MediaType.APPLICATION_NDJSON,
|
||||
null
|
||||
) { step: FirstStep<DataBuffer?> ->
|
||||
step
|
||||
.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}\n"))
|
||||
) {
|
||||
it.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}\n"))
|
||||
.consumeNextWith(expectString("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}\n"))
|
||||
.consumeNextWith(expectString("{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}\n"))
|
||||
.verifyComplete()
|
||||
@@ -102,11 +102,11 @@ class KotlinSerializationJsonEncoderTests : AbstractEncoderTests<KotlinSerializa
|
||||
@Test
|
||||
fun encodeMono() {
|
||||
val input = Mono.just(Pojo("foo", "bar"))
|
||||
testEncode(input, Pojo::class.java, { step: FirstStep<DataBuffer?> -> step
|
||||
.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}")
|
||||
testEncode(input, Pojo::class.java) {
|
||||
it.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}")
|
||||
.andThen { dataBuffer: DataBuffer? -> DataBufferUtils.release(dataBuffer) })
|
||||
.verifyComplete()
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user