1 package de.juplo.facebook.exceptions;
3 import com.fasterxml.jackson.core.JsonProcessingException;
4 import de.juplo.facebook.exceptions.GraphApiException.FacebookErrorMessage;
5 import static de.juplo.facebook.exceptions.GraphApiException.OBJECT_MAPPER;
6 import de.juplo.facebook.exceptions.GraphApiException.Type;
7 import java.io.IOException;
9 import static org.junit.Assert.assertEquals;
10 import static org.junit.Assert.assertNull;
15 public class FacebookErrorMessageMappingTest
17 final String example =
20 "\"message\":\"Message describing the error\"," +
21 "\"type\":\"OAuthException\"," +
23 "\"error_subcode\":460," +
24 "\"error_user_title\":\"A title\"," +
25 "\"error_user_msg\":\"A message\"," +
26 "\"fbtrace_id\":\"EJplcsCHuLu\"" +
30 final String error_100 = "{\"error\":{\"message\":\"Unsupported get request. Please read the Graph API documentation at https:\\/\\/developers.facebook.com\\/docs\\/graph-api\",\"type\":\"GraphMethodException\",\"code\":100,\"fbtrace_id\":\"Bs\\/0p3CiVld\"}}";
34 public void testSerialize() throws JsonProcessingException
36 FacebookErrorMessage error = new FacebookErrorMessage();
37 error.message = "Message describing the error";
38 error.type = Type.OAuthException.name();
41 error.userTitle = "A title";
42 error.userMessage = "A message";
43 error.traceId = "EJplcsCHuLu";
45 assertEquals(example, OBJECT_MAPPER.writeValueAsString(error));
49 public void testSerialize100() throws JsonProcessingException
51 FacebookErrorMessage error = new FacebookErrorMessage();
52 error.message = "Unsupported get request. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api";
53 error.type = "GraphMethodException";
55 error.traceId = "Bs/0p3CiVld";
57 assertEquals(error_100, OBJECT_MAPPER.writeValueAsString(error));
61 public void testDeserialize() throws IOException
63 FacebookErrorMessage error =
64 OBJECT_MAPPER.readValue(example, FacebookErrorMessage.class);
66 assertEquals("Message describing the error", error.message);
67 assertEquals(Type.OAuthException.name(), error.type);
68 assertEquals(new Integer(190), error.code);
69 assertEquals(new Integer(460), error.subCode);
70 assertEquals("A title", error.userTitle);
71 assertEquals("A message", error.userMessage);
72 assertEquals("EJplcsCHuLu", error.traceId);
76 public void testDeserialize100() throws IOException
78 FacebookErrorMessage error =
79 OBJECT_MAPPER.readValue(error_100, FacebookErrorMessage.class);
81 assertEquals("Unsupported get request. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api", error.message);
82 assertEquals("GraphMethodException", error.type);
83 assertEquals(new Integer(100), error.code);
84 assertNull(error.subCode);
85 assertNull(error.userTitle);
86 assertNull(error.userMessage);
87 assertEquals("Bs/0p3CiVld", error.traceId);