@Test
public void testChainedSerializer() throws Exception {

  class BarToBazSerializer extends DefaultValueSerializer<Bar, Baz> {
  }
  class BazToDateSerializer extends DefaultValueSerializer<Baz, Date> {
  }
  class Qux {
    @SuppressWarnings("unused")
    public Bar getSomeBar() {
      return null;
    }
  }
  @Api(transformers = {BazToDateSerializer.class, BarToBazSerializer.class})
  class QuxEndpoint {
    @SuppressWarnings("unused")
    public Qux getQux() {
      return null;
    }
  }
  String apiConfigSource = g.generateConfig(QuxEndpoint.class).get("myapi-v1.api");
  ObjectNode root = objectMapper.readValue(apiConfigSource, ObjectNode.class);
  JsonNode qux = root.path("descriptor").path("schemas").path("Qux");
  verifyObjectPropertySchema(qux, "someBar", "string", "date-time");
}