mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-21 21:39:05 +00:00
ProtobufJsonEncoder actually supports streaming
Closes gh-37158
This commit is contained in:
+12
-2
@@ -92,7 +92,7 @@ class ProtobufJsonEncoderTests extends AbstractEncoderTests<ProtobufJsonEncoder>
|
||||
}
|
||||
|
||||
@Test
|
||||
void encodeStream() {
|
||||
void encodeNonStream() {
|
||||
Flux<Message> input = Flux.just(this.msg1, this.msg2);
|
||||
ResolvableType inputType = forClass(Msg.class);
|
||||
|
||||
@@ -104,7 +104,7 @@ class ProtobufJsonEncoderTests extends AbstractEncoderTests<ProtobufJsonEncoder>
|
||||
}
|
||||
|
||||
@Test
|
||||
void encodeEmptyFlux() {
|
||||
void encodeNonStreamEmpty() {
|
||||
Flux<Message> input = Flux.empty();
|
||||
ResolvableType inputType = forClass(Msg.class);
|
||||
Flux<DataBuffer> result = this.encoder.encode(input, this.bufferFactory, inputType,
|
||||
@@ -115,6 +115,16 @@ class ProtobufJsonEncoderTests extends AbstractEncoderTests<ProtobufJsonEncoder>
|
||||
.verifyComplete();
|
||||
}
|
||||
|
||||
@Test
|
||||
void encodeStream() {
|
||||
Flux<Message> input = Flux.just(this.msg1, this.msg2);
|
||||
ResolvableType inputType = forClass(Msg.class);
|
||||
|
||||
testEncode(input, inputType, MediaType.APPLICATION_NDJSON, null, step -> step
|
||||
.assertNext(buffer -> assertBufferEqualsJson(buffer, "{\"foo\":\"Foo\",\"blah\":{\"blah\":123}}\n"))
|
||||
.assertNext(buffer -> assertBufferEqualsJson(buffer, "{\"foo\":\"Bar\",\"blah\":{\"blah\":456}}\n"))
|
||||
.verifyComplete());
|
||||
}
|
||||
|
||||
private void assertBufferEqualsJson(DataBuffer actual, String expected) {
|
||||
byte[] bytes = DataBufferTestUtils.dumpBytes(actual);
|
||||
|
||||
Reference in New Issue
Block a user