@Test
    public void shouldRoundTripNullChange() {
        assertThat(
            serde.serializeParts(null, new Change<>(null, null)),
            is(new Change<byte[]>(null, null))
        );

        assertThat(
            serde.deserializeParts(null, new Change<>(null, null)),
            is(new Change<String>(null, null))
        );

        final byte[] legacyFormat = mergeChangeArraysIntoSingleLegacyFormattedArray(new Change<>(null, null));
        assertThat(
            FullChangeSerde.decomposeLegacyFormattedArrayIntoChangeArrays(legacyFormat),
            is(new Change<byte[]>(null, null))
        );
    }
We used to serialize a Change into a single byte[]. Now, we don't anymore, but we still keep this logic here
so that we can produce the legacy format to test that we can still deserialize it.
streams/src/test/java/org/apache/kafka/streams/kstream/internals/FullChangeSerdeTest.java