private <K, V> void assertRoundTripEquality(KeyValuesMarshaller<K, V> marshaller, K key,
List<V> values) {
ByteBuffer bytes = marshaller.toBytes(new KeyValue<>(key, values));
KeyValue<K, Iterable<V>> reconstructed = marshaller.fromBytes(bytes.slice());
validateEqual(key, values, reconstructed);
reconstructed = marshaller.fromBytes(bytes.slice());
assertEquals(bytes, marshaller.toBytes(reconstructed));
}
private <K, V> void validateEqual(K key, List<V> values,
KeyValue<K, ? extends Iterable<V>> reconstructed) {