Fix BaseCodecConfigurer clone bug
Prior to this commit, ExchangeStrategies custom codec's reader and writer were not registered due to a bug in BaseCodecConfigurer. This commit fixes this by correcting the implementation of the DefaultCustomCodecs constructor used within BaseCodecConfigurer. Closes gh-25149
This commit is contained in:
@@ -279,7 +279,7 @@ public class CodecConfigurerTests {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void cloneCustomCodecs() {
|
||||
public void cloneEmptyCustomCodecs() {
|
||||
this.configurer.registerDefaults(false);
|
||||
CodecConfigurer clone = this.configurer.clone();
|
||||
|
||||
@@ -294,6 +294,22 @@ public class CodecConfigurerTests {
|
||||
assertThat(clone.getWriters().size()).isEqualTo(2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void cloneCustomCodecs() {
|
||||
CodecConfigurer from = new TestCodecConfigurer();
|
||||
from.registerDefaults(false);
|
||||
from.customCodecs().register(new Jackson2JsonEncoder());
|
||||
from.customCodecs().register(new Jackson2JsonDecoder());
|
||||
from.customCodecs().register(new ServerSentEventHttpMessageReader());
|
||||
from.customCodecs().register(new ServerSentEventHttpMessageWriter());
|
||||
|
||||
CodecConfigurer clone = from.clone();
|
||||
assertThat(from.getReaders().size()).isEqualTo(2);
|
||||
assertThat(from.getWriters().size()).isEqualTo(2);
|
||||
assertThat(clone.getReaders().size()).isEqualTo(2);
|
||||
assertThat(clone.getWriters().size()).isEqualTo(2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void cloneDefaultCodecs() {
|
||||
CodecConfigurer clone = this.configurer.clone();
|
||||
|
||||
Reference in New Issue
Block a user