@Test
void emptyPortfolioWithAdjustmentsAndRisks() {

    final Money adj = Money.from(10);
    final Map<Rating, Money> in = Collections.singletonMap(Rating.D, adj);
    final PortfolioOverview po = new PortfolioOverviewImpl(in, Ratio.ZERO);
    assertSoftly(softly -> {
        softly.assertThat(po.getInvested())
            .isEqualTo(adj);
        for (final Rating r : Rating.values()) {
            final Money expectedAbsolute = r == Rating.D ? adj : Money.ZERO;
            final Money expectedRelative = r == Rating.D ? Money.from(1) : Money.ZERO;
            softly.assertThat(po.getInvested(r))
                .as(r + " invested")
                .isEqualTo(expectedAbsolute);
            softly.assertThat(po.getShareOnInvestment(r))
                .as(r + " as a share")
                .isEqualTo(Ratio.fromRaw(expectedRelative.getValue()));
        }
    });
}