@@ -181,34 +181,42 @@ public void testJsonStringConvert() {
181
181
Map <String , Object > headersMap = new HashMap <>();
182
182
headersMap .put ("thisOnesAString" , "foo" );
183
183
headersMap .put ("thisOnesBytes" , "bar" );
184
+ headersMap .put ("thisOnesEmpty" , "" );
184
185
headersMap .put ("alwaysRaw" , "baz" .getBytes ());
185
186
MessageHeaders headers = new MessageHeaders (headersMap );
186
187
Headers target = new RecordHeaders ();
187
188
mapper .fromHeaders (headers , target );
188
189
assertThat (target ).containsExactlyInAnyOrder (
189
190
new RecordHeader (DefaultKafkaHeaderMapper .JSON_TYPES ,
190
- "{\" thisOnesAString\" :\" java.lang.String\" }" .getBytes ()),
191
+ ("{\" thisOnesEmpty\" :\" java.lang.String\" ,"
192
+ + "\" thisOnesAString\" :\" java.lang.String\" }" ).getBytes ()),
191
193
new RecordHeader ("thisOnesAString" , "foo" .getBytes ()),
192
194
new RecordHeader ("alwaysRaw" , "baz" .getBytes ()),
195
+ new RecordHeader ("thisOnesEmpty" , "" .getBytes ()),
193
196
new RecordHeader ("thisOnesBytes" , "bar" .getBytes ()));
194
197
headersMap .clear ();
195
198
target .add (new RecordHeader (DefaultKafkaHeaderMapper .JSON_TYPES ,
196
- ("{\" thisOnesAString\" :\" java.lang.String\" ,"
199
+ ("{\" thisOnesEmpty\" :\" java.lang.String\" ,"
200
+ + "\" thisOnesAString\" :\" java.lang.String\" ,"
197
201
+ "\" backwardCompatible\" :\" java.lang.String\" }" ).getBytes ()));
198
202
target .add (new RecordHeader ("backwardCompatible" , "\" qux\" " .getBytes ()));
199
203
mapper .toHeaders (target , headersMap );
200
204
assertThat (headersMap ).contains (
201
205
entry ("thisOnesAString" , "foo" ),
206
+ entry ("thisOnesEmpty" , "" ),
202
207
entry ("thisOnesBytes" , "bar" .getBytes ()),
203
208
entry ("alwaysRaw" , "baz" .getBytes ()),
204
209
entry ("backwardCompatible" , "qux" ));
210
+ // Now with String encoding
205
211
mapper .setEncodeStrings (true );
206
212
target = new RecordHeaders ();
207
213
mapper .fromHeaders (headers , target );
208
214
assertThat (target ).containsExactlyInAnyOrder (
209
215
new RecordHeader (DefaultKafkaHeaderMapper .JSON_TYPES ,
210
- "{\" thisOnesAString\" :\" java.lang.String\" }" .getBytes ()),
216
+ ("{\" thisOnesEmpty\" :\" java.lang.String\" ,"
217
+ + "\" thisOnesAString\" :\" java.lang.String\" }" ).getBytes ()),
211
218
new RecordHeader ("thisOnesAString" , "\" foo\" " .getBytes ()),
219
+ new RecordHeader ("thisOnesEmpty" , "\" \" " .getBytes ()),
212
220
new RecordHeader ("alwaysRaw" , "baz" .getBytes ()),
213
221
new RecordHeader ("thisOnesBytes" , "bar" .getBytes ()));
214
222
}
0 commit comments