### Question:
FactCommentResponseConverter implements Function<FactCommentRecord, FactComment> { @Override public FactComment apply(FactCommentRecord record) { if (record == null) return null; return FactComment.builder() .setId(record.getId()) .setReplyTo(record.getReplyToID()) .setOrigin(ObjectUtils.ifNotNull(originConverter.apply(record.getOriginID()), Origin::toInfo)) .setComment(record.getComment()) .setTimestamp(record.getTimestamp()) .build(); } @Inject  FactCommentResponseConverter(OriginByIdResponseResolver originConverter); @Override FactComment apply(FactCommentRecord record);  }### Answer:
@Test public void testConvertNull() { assertNull(converter.apply(null)); }
@Test public void testConvertEmpty() { assertNotNull(converter.apply(new FactCommentRecord())); }
@Test public void testConvertFull() { FactCommentRecord record = createRecord(); assertModel(record, converter.apply(record)); }