private void assertRoundTrip(String value)
throws IOException
{
JsonCodec<String> jsonCodec = JsonCodec.jsonCodec(String.class);
JsonMapper jsonMapper = new JsonMapper(new ObjectMapper());
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
MultivaluedMap<String, Object> headers = new GuavaMultivaluedMap<>();
jsonMapper.writeTo(value, String.class, null, null, null, headers, outputStream);
String json = new String(outputStream.toByteArray(), UTF_8);
assertTrue(!json.contains("<"));
assertTrue(!json.contains(">"));
assertTrue(!json.contains("'"));
assertTrue(!json.contains("&"));
assertEquals(jsonCodec.fromJson(json), value);
assertEquals(headers.getFirst(HttpHeaders.X_CONTENT_TYPE_OPTIONS), "nosniff");
}