@Test
    public void onlyBishopOnEmptyBoard() {
        Map<String, Integer> figureQuantityMap = new HashMap<>();
        figureQuantityMap.put(BISHOP.toString(), 2);
        Chessboard chessboard = Chessboard.newBuilder(figureQuantityMap)
                                        .withDimension(DIMENSION_6)
                                        .withBishop()
                                        .build();

        Set<String> boards = chessboard.placeFiguresOnEmptyBoard().collect(Collectors.toSet());

        assertThat("all elements are not present on each board",
                boards.stream()
                .filter(board -> !board.contains(KING.getFigureAsString())
                        && !board.contains(QUEEN.getFigureAsString())
                        && board.contains(BISHOP.getFigureAsString())
                        && !board.contains(ROOK.getFigureAsString())
                        && !board.contains(KNIGHT.getFigureAsString())
                        && board.contains(FIELD_UNDER_ATTACK_STRING)
                        && board.contains(EMPTY_FIELD_STRING)
                        && leftOnlyFigures(board).length() == 2)
                .map(e -> 1)
                .reduce(0, (x, y) -> x + y), is(520));
    }