Не получить покрытие в Junits (Mocking StringBuilder и установить его в AddressModel) - PullRequest
0 голосов
/ 21 мая 2019

У меня есть популярий в hybris с именем SingleLineAddressFormatPopulator. Я хочу JUnits для этого. Сомневаюсь, как издеваться, так как в нем участвует String Builder и класс модели. Было бы здорово, если бы кто-нибудь мне помог.

    private List<String> addressFormatList;
    @Override
    public void populate(final AddressModel addressModel, final StringBuilder addressLine) throws ConversionException {
    for (final String field : addressFormatList) {
        try {
            final String fieldValue = (String) PropertyUtils.getProperty(addressModel, field);
            if (field.equals("region.isocodeShort")) {
                if (StringUtils.isNotEmpty(fieldValue)) {
                    addressLine.append(fieldValue.trim());
                    addressLine.append(" ");
                }
            } else {
                if (StringUtils.isNotEmpty(fieldValue)) {
                    addressLine.append(fieldValue.trim());
                    addressLine.append(", ");
                }
            }

        } catch (final NestedNullException e) {
            if (LOG.isDebugEnabled()) {
                LOG.debug(e.getLocalizedMessage(), e);
            }
        } catch (final Exception e) {
            throw new ConversionException(e.getLocalizedMessage(), e);
        }
    }

    if (addressLine.length() > 2) {
        // Trim last ", "
        addressLine.setLength(addressLine.length() - 2);
    }
}
}
...