package geniusweb.inform; import static org.junit.Assert.assertEquals; import java.io.IOException; import java.net.URISyntaxException; import java.util.Arrays; import java.util.List; import org.junit.Before; import org.junit.Test; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; import tudelft.utilities.junit.GeneralTests; public class YourTurnTest extends GeneralTests { private YourTurn yourturn1, yourturn1b; private String asJson = "{\"YourTurn\":{}}"; private YourTurn yourturnb; @Before public void before() throws URISyntaxException { yourturn1 = new YourTurn(); yourturn1b = new YourTurn(); yourturnb = new YourTurn() { @Override public int hashCode() { return 2; } }; } @Override public List> getGeneralTestData() { return Arrays.asList(Arrays.asList(yourturn1, yourturn1b), Arrays.asList(yourturnb)); } @Override public List getGeneralTestStrings() { return Arrays.asList("YourTurn*", "YourTurn*"); } @Test public void testSerialize() throws JsonProcessingException { ObjectMapper jackson = new ObjectMapper(); String json = jackson.writeValueAsString(yourturn1); System.out.println(json); assertEquals(asJson, json); } @Test public void testDeserialize() throws JsonParseException, JsonMappingException, IOException { ObjectMapper jackson = new ObjectMapper(); YourTurn p = (YourTurn) jackson.readValue(asJson, Inform.class); System.out.println(p); assertEquals(yourturn1, p); } }