Browse Source

Upgrade to Jackson 3.0.0-rc10

See gh-35521
pull/35535/head
Sébastien Deleuze 3 months ago
parent
commit
79738d921a
  1. 2
      framework-platform/framework-platform.gradle
  2. 6
      spring-jms/src/test/java/org/springframework/jms/support/converter/JacksonJsonMessageConverterTests.java
  3. 2
      spring-messaging/src/main/java/org/springframework/messaging/simp/user/MultiServerUserRegistry.java
  4. 14
      spring-web/src/test/java/org/springframework/http/codec/ServerSentEventHttpMessageWriterTests.java
  5. 22
      spring-web/src/test/java/org/springframework/http/codec/json/JacksonJsonEncoderTests.java
  6. 2
      spring-web/src/test/java/org/springframework/web/client/RestClientIntegrationTests.java
  7. 6
      spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyInsertersTests.java
  8. 2
      spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java

2
framework-platform/framework-platform.gradle

@ -21,7 +21,7 @@ dependencies { @@ -21,7 +21,7 @@ dependencies {
api(platform("org.jetbrains.kotlinx:kotlinx-serialization-bom:1.9.0"))
api(platform("org.junit:junit-bom:5.13.4"))
api(platform("org.mockito:mockito-bom:5.19.0"))
api(platform("tools.jackson:jackson-bom:3.0.0-rc9"))
api(platform("tools.jackson:jackson-bom:3.0.0-rc10"))
constraints {
api("com.fasterxml:aalto-xml:1.3.3")

6
spring-jms/src/test/java/org/springframework/jms/support/converter/JacksonJsonMessageConverterTests.java

@ -181,7 +181,7 @@ class JacksonJsonMessageConverterTests { @@ -181,7 +181,7 @@ class JacksonJsonMessageConverterTests {
@Test
void toTextMessageWithNullReturnType() throws JMSException, NoSuchMethodException {
testToTextMessageWithReturnType(null);
verify(sessionMock).createTextMessage("{\"description\":\"lengthy description\",\"name\":\"test\"}");
verify(sessionMock).createTextMessage("{\"name\":\"test\",\"description\":\"lengthy description\"}");
}
@Test
@ -190,7 +190,7 @@ class JacksonJsonMessageConverterTests { @@ -190,7 +190,7 @@ class JacksonJsonMessageConverterTests {
MethodParameter returnType = new MethodParameter(method, -1);
testToTextMessageWithReturnType(returnType);
verify(sessionMock).createTextMessage("{\"description\":\"lengthy description\",\"name\":\"test\"}");
verify(sessionMock).createTextMessage("{\"name\":\"test\",\"description\":\"lengthy description\"}");
}
@Test
@ -237,7 +237,7 @@ class JacksonJsonMessageConverterTests { @@ -237,7 +237,7 @@ class JacksonJsonMessageConverterTests {
converter.toMessage(bean, sessionMock, Full.class);
verify(textMessageMock).setStringProperty("__typeid__", MyAnotherBean.class.getName());
verify(sessionMock).createTextMessage("{\"description\":\"lengthy description\",\"name\":\"test\"}");
verify(sessionMock).createTextMessage("{\"name\":\"test\",\"description\":\"lengthy description\"}");
}

2
spring-messaging/src/main/java/org/springframework/messaging/simp/user/MultiServerUserRegistry.java

@ -209,7 +209,7 @@ public class MultiServerUserRegistry implements SimpUserRegistry, SmartApplicati @@ -209,7 +209,7 @@ public class MultiServerUserRegistry implements SimpUserRegistry, SmartApplicati
/**
* Constructor to create DTO from a local user registry.
*/
public UserRegistrySnapshot(String id, SimpUserRegistry registry) {
UserRegistrySnapshot(String id, SimpUserRegistry registry) {
this.id = id;
Set<SimpUser> users = registry.getUsers();
this.users = CollectionUtils.newHashMap(users.size());

14
spring-web/src/test/java/org/springframework/http/codec/ServerSentEventHttpMessageWriterTests.java

@ -151,10 +151,10 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating @@ -151,10 +151,10 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating
StepVerifier.create(outputMessage.getBody())
.consumeNextWith(stringConsumer("data:"))
.consumeNextWith(stringConsumer("{\"bar\":\"barbar\",\"foo\":\"foofoo\"}"))
.consumeNextWith(stringConsumer("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}"))
.consumeNextWith(stringConsumer("\n\n"))
.consumeNextWith(stringConsumer("data:"))
.consumeNextWith(stringConsumer("{\"bar\":\"barbarbar\",\"foo\":\"foofoofoo\"}"))
.consumeNextWith(stringConsumer("{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}"))
.consumeNextWith(stringConsumer("\n\n"))
.expectComplete()
.verify();
@ -175,15 +175,15 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating @@ -175,15 +175,15 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating
.consumeNextWith(stringConsumer("data:"))
.consumeNextWith(stringConsumer("""
{
data: "bar" : "barbar",
data: "foo" : "foofoo"
data: "foo" : "foofoo",
data: "bar" : "barbar"
data:}"""))
.consumeNextWith(stringConsumer("\n\n"))
.consumeNextWith(stringConsumer("data:"))
.consumeNextWith(stringConsumer("""
{
data: "bar" : "barbarbar",
data: "foo" : "foofoofoo"
data: "foo" : "foofoofoo",
data: "bar" : "barbarbar"
data:}"""))
.consumeNextWith(stringConsumer("\n\n"))
.expectComplete()
@ -203,7 +203,7 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating @@ -203,7 +203,7 @@ class ServerSentEventHttpMessageWriterTests extends AbstractDataBufferAllocating
assertThat(outputMessage.getHeaders().getContentType()).isEqualTo(mediaType);
StepVerifier.create(outputMessage.getBody())
.consumeNextWith(stringConsumer("data:", charset))
.consumeNextWith(stringConsumer("{\"bar\":\"bar\uD834\uDD1E\",\"foo\":\"foo\uD834\uDD1E\"}", charset))
.consumeNextWith(stringConsumer("{\"foo\":\"foo\uD834\uDD1E\",\"bar\":\"bar\uD834\uDD1E\"}", charset))
.consumeNextWith(stringConsumer("\n\n", charset))
.expectComplete()
.verify();

22
spring-web/src/test/java/org/springframework/http/codec/json/JacksonJsonEncoderTests.java

@ -98,9 +98,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> { @@ -98,9 +98,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
new Pojo("foofoofoo", "barbarbar"));
testEncodeAll(input, ResolvableType.forClass(Pojo.class), APPLICATION_NDJSON, null, step -> step
.consumeNextWith(expectString("{\"bar\":\"bar\",\"foo\":\"foo\"}\n"))
.consumeNextWith(expectString("{\"bar\":\"barbar\",\"foo\":\"foofoo\"}\n"))
.consumeNextWith(expectString("{\"bar\":\"barbarbar\",\"foo\":\"foofoofoo\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}\n"))
.verifyComplete()
);
}
@ -137,9 +137,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> { @@ -137,9 +137,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
);
testEncode(input, Pojo.class, step -> step
.consumeNextWith(expectString("[{\"bar\":\"bar\",\"foo\":\"foo\"}"))
.consumeNextWith(expectString(",{\"bar\":\"barbar\",\"foo\":\"foofoo\"}"))
.consumeNextWith(expectString(",{\"bar\":\"barbarbar\",\"foo\":\"foofoofoo\"}"))
.consumeNextWith(expectString("[{\"foo\":\"foo\",\"bar\":\"bar\"}"))
.consumeNextWith(expectString(",{\"foo\":\"foofoo\",\"bar\":\"barbar\"}"))
.consumeNextWith(expectString(",{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}"))
.consumeNextWith(expectString("]"))
.verifyComplete());
}
@ -187,9 +187,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> { @@ -187,9 +187,9 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
);
testEncode(input, ResolvableType.forClass(Pojo.class), barMediaType, null, step -> step
.consumeNextWith(expectString("{\"bar\":\"bar\",\"foo\":\"foo\"}\n"))
.consumeNextWith(expectString("{\"bar\":\"barbar\",\"foo\":\"foofoo\"}\n"))
.consumeNextWith(expectString("{\"bar\":\"barbarbar\",\"foo\":\"foofoofoo\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}\n"))
.consumeNextWith(expectString("{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}\n"))
.verifyComplete()
);
}
@ -237,7 +237,7 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> { @@ -237,7 +237,7 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
ResolvableType.forClass(Pojo.class), MimeTypeUtils.APPLICATION_JSON, Collections.emptyMap());
StepVerifier.create(result)
.consumeNextWith(expectString("[{\"bar\":\"bar\",\"foo\":\"foo\"}"))
.consumeNextWith(expectString("[{\"foo\":\"foo\",\"bar\":\"bar\"}"))
.consumeNextWith(expectString("]"))
.expectComplete()
.verify(Duration.ofSeconds(5));
@ -249,7 +249,7 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> { @@ -249,7 +249,7 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
MimeType mimeType = new MimeType("application", "json", StandardCharsets.US_ASCII);
testEncode(input, ResolvableType.forClass(Pojo.class), mimeType, null, step -> step
.consumeNextWith(expectString("{\"bar\":\"bar\",\"foo\":\"foo\"}"))
.consumeNextWith(expectString("{\"foo\":\"foo\",\"bar\":\"bar\"}"))
.verifyComplete()
);
}

2
spring-web/src/test/java/org/springframework/web/client/RestClientIntegrationTests.java

@ -528,7 +528,7 @@ class RestClientIntegrationTests { @@ -528,7 +528,7 @@ class RestClientIntegrationTests {
expectRequestCount(1);
expectRequest(request -> {
assertThat(request.getTarget()).isEqualTo("/pojo/capitalize");
assertThat(request.getBody().utf8()).isEqualTo("{\"bar\":\"barbar\",\"foo\":\"foofoo\"}");
assertThat(request.getBody().utf8()).isEqualTo("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}");
assertThat(request.getHeaders().get(HttpHeaders.ACCEPT)).isEqualTo("application/json");
assertThat(request.getHeaders().get(HttpHeaders.CONTENT_TYPE)).isEqualTo("application/json");
});

6
spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyInsertersTests.java

@ -140,7 +140,7 @@ class BodyInsertersTests { @@ -140,7 +140,7 @@ class BodyInsertersTests {
StepVerifier.create(result).expectComplete().verify();
StepVerifier.create(response.getBodyAsString())
.expectNext("{\"password\":\"bar\",\"username\":\"foo\"}")
.expectNext("{\"username\":\"foo\",\"password\":\"bar\"}")
.expectComplete()
.verify();
}
@ -169,7 +169,7 @@ class BodyInsertersTests { @@ -169,7 +169,7 @@ class BodyInsertersTests {
Mono<Void> result = inserter.insert(response, this.context);
StepVerifier.create(result).expectComplete().verify();
StepVerifier.create(response.getBodyAsString())
.expectNext("{\"password\":\"bar\",\"username\":\"foo\"}")
.expectNext("{\"username\":\"foo\",\"password\":\"bar\"}")
.expectComplete()
.verify();
}
@ -200,7 +200,7 @@ class BodyInsertersTests { @@ -200,7 +200,7 @@ class BodyInsertersTests {
Mono<Void> result = inserter.insert(response, this.context);
StepVerifier.create(result).expectComplete().verify();
StepVerifier.create(response.getBodyAsString())
.expectNext("{\"password\":\"bar\",\"username\":\"foo\"}")
.expectNext("{\"username\":\"foo\",\"password\":\"bar\"}")
.expectComplete()
.verify();
}

2
spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java

@ -779,7 +779,7 @@ class WebClientIntegrationTests { @@ -779,7 +779,7 @@ class WebClientIntegrationTests {
expectRequestCount(1);
expectRequest(request -> {
assertThat(request.getTarget()).isEqualTo("/pojo/capitalize");
assertThat(request.getBody().utf8()).isEqualTo("{\"bar\":\"barbar\",\"foo\":\"foofoo\"}");
assertThat(request.getBody().utf8()).isEqualTo("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}");
assertThat(request.getHeaders().get(HttpHeaders.CONTENT_LENGTH)).isEqualTo("31");
assertThat(request.getHeaders().get(HttpHeaders.ACCEPT)).isEqualTo("application/json");
assertThat(request.getHeaders().get(HttpHeaders.CONTENT_TYPE)).isEqualTo("application/json");

Loading…
Cancel
Save