package org.atlasapi.messaging.v3; import static org.junit.Assert.assertEquals; import java.util.List; import java.util.Set; import org.atlasapi.media.entity.Publisher; import org.atlasapi.messaging.v3.ContentEquivalenceAssertionMessage.AdjacentRef; import org.junit.Test; import com.google.common.collect.Lists; import com.google.common.collect.Sets; import com.metabroadcast.common.time.Timestamp; public class ContentEquivalenceAssertionMessageTest { @Test public void testDeSerialization() throws Exception { Set<String> srcs = Sets.newHashSet(Publisher.BBC.key(), Publisher.ITV.key()); List<AdjacentRef> adjacent = Lists.newArrayList( new AdjacentRef("cyp", "episode", Publisher.PA.key()), new AdjacentRef("dms", "item", Publisher.ITV.key()) ); ContentEquivalenceAssertionMessage msg = new ContentEquivalenceAssertionMessage( "1", Timestamp.of(1), "cf2", "episode", "bbc.co.uk", adjacent, srcs); JacksonMessageSerializer<ContentEquivalenceAssertionMessage> serializer = JacksonMessageSerializer.forType(ContentEquivalenceAssertionMessage.class); byte[] serialized = serializer.serialize(msg); ContentEquivalenceAssertionMessage deserialized = serializer.deserialize(serialized); assertEquals(msg.getMessageId(), deserialized.getMessageId()); assertEquals(msg.getTimestamp(), deserialized.getTimestamp()); assertEquals(msg.getEntityId(), deserialized.getEntityId()); assertEquals(msg.getEntityType(), deserialized.getEntityType()); assertEquals(msg.getEntitySource(), deserialized.getEntitySource()); assertEquals(msg.getAdjacent(), deserialized.getAdjacent()); assertEquals(msg.getSources(), deserialized.getSources()); } }