@Test
void testSplitSWithLargeRemainder() {

    NonNegativeIntegerSplitterByWeights<String> splitter = new NonNegativeIntegerSplitterByWeights<>(ImmutableMap.of(
            "A", 1d,
            "B", 2d,
            "C", 3d,
            "D", 2d));
    ImmutableMap<String, Integer> splitInts = splitter.split(7);
    Assertions.assertEquals(1, (int) splitInts.get("A"));
    Assertions.assertEquals(2, (int) splitInts.get("B"));
    Assertions.assertEquals(2, (int) splitInts.get("C"));
    Assertions.assertEquals(2, (int) splitInts.get("D"));
}