+ " <content type=\"text\">This is entity created by John Smith</content>\n"
+ " </entry>\n"
+ "</feed>\n";
public void testAtomFeedReadWrite() throws WebApplicationException, IOException {
MockHttpServer server = new MockHttpServer(SERVER_PORT);
server.setMockResponseCode(200);
server.setMockResponseContentEchoRequest(true);
server.setMockResponseContentType(MediaType.APPLICATION_ATOM_XML);
server.startServer();
try {
RestClient client = new RestClient();
Resource resource =
client.resource(MessageFormat.format(SERVICE_URL, String.valueOf(server
.getServerPort())));
AtomFeedProvider afp = new AtomFeedProvider();
AtomFeed entryToPost =
afp.readFrom(AtomFeed.class,
null,
null,
MediaType.APPLICATION_ATOM_XML_TYPE,
null,
new ByteArrayInputStream(FEED.getBytes()));
AtomFeed responseEntity =
resource.accept(MediaType.APPLICATION_ATOM_XML_TYPE)
.contentType(MediaType.APPLICATION_ATOM_XML_TYPE).post(AtomFeed.class,
entryToPost);
ByteArrayOutputStream os = new ByteArrayOutputStream();
afp.writeTo(responseEntity,
AtomFeed.class,
null,
null,
MediaType.APPLICATION_ATOM_XML_TYPE,
null,
os);
String actual = os.toString();
assertEquals(FEED, actual);
} finally {
server.stopServer();
}
}