@Test
    public void testWhacks() {
        int minWhack = insetMap.getMinWhack();
        int maxWhack = insetMap.getMaxWhack();
        int numWhacks = insetMap.countWhacks();
        Assert.assertEquals(maxWhack - minWhack + 1, numWhacks,
                            "Expected " + numWhacks + " whacks.");
        int tally = 0;
        for (int whack = minWhack; whack < maxWhack + 1; whack++) {
            int maxRow = insetMap.getMaxRowOfWhack(whack);
            Assert.assertTrue(maxRow < numRows,
                              "Expected whack " + whack + " to not extend past row" + (numRows - 1));
            int minRow = insetMap.getMinRowOfWhack(whack);
            Assert.assertTrue(minRow >= 0,
                              "Expected whack " + whack + " to not include negative rows.");
            int current = maxRow - minRow + 1;
            Assert.assertTrue(current >= 1, "Expected whack " + whack + " to include at least one row.");
            if (whack == minWhack) {
                Assert.assertTrue(current <= 2, "Expected first whack to not be longer than two rows.");
            }
            if (whack == maxWhack) {
                Assert.assertTrue(current <= 2, "Expected last whack to not be longer than two rows.");
            }
            tally = tally + current;
        }
        Assert.assertEquals(tally, insetMap.countCells(),
                "Expected total cells in all whacks to equal total cells in all rows.");
    }