Тест кастомного Джексона Сериализатора не работает - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть пользовательский сериализатор, который сериализует LocalDateTime для меня.

    public class LocalDateTimeJsonSerializer extends JsonSerializer<LocalDateTime> {

        private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ISO_LOCAL_DATE_TIME;

        @Override
        public void serialize(LocalDateTime date, JsonGenerator generator, SerializerProvider arg2) throws IOException, JsonProcessingException {
            final String dateString = date.format(FORMATTER);
            generator.writeString(dateString);
        }
    }

Моя проблема в том, что мой тест не работает, похоже, что мой jsonGenerator все еще будет нулевым после сериализации

  @Test
        public void serialises_LocalDateTime() throws JsonProcessingException, IOException {
            Writer jsonWriter = new StringWriter();
            JsonGenerator jsonGenerator = new JsonFactory().createGenerator(jsonWriter);
            SerializerProvider serializerProvider = new ObjectMapper().getSerializerProvider();
            LocalDateTimeJsonSerializer  ldt = new LocalDateTimeJsonSerializer();
            ldt.serialize(LocalDateTime.of(2000, Month.JANUARY, 1, 0, 0), jsonGenerator, serializerProvider);
            jsonGenerator.flush();
            //assertEquals(jsonWriter.toString(), "2000-01-01T00:00:00");
        }

.. Любая идея?

...