### Question:
BoardGameService { public BoardGame createNewBoardGame(final CreateBoardGameCommand createCommand) { BoardGame boardGame = createCommand.execute(); this.boardGameCommandRepository.persist(boardGame); return boardGame; } BoardGameService(final BoardGameCommandRepository boardGameCommandRepository); BoardGame createNewBoardGame(final CreateBoardGameCommand createCommand);  }### Answer:
@Test public void create_command_results_in_creation_and_persistence_of_new_game() { BoardGameService boardGameService = new BoardGameService(commandRepository); CreateBoardGameCommand createBoardGameCommand = createBoardGameCommand(); BoardGame created = boardGameService.createNewBoardGame(createBoardGameCommand); verify(commandRepository).persist(any()); assertThat(created.getId()).isNotNull(); assertThat(created.getTitle()).isEqualTo(TITLE); assertThat(created.getPublisher()).isEqualTo(PUBLISHER); assertThat(created.getAuthor()).isEqualTo(AUTHOR); assertThat(created.getMinPlayers()).isEqualTo(MIN_PLAYERS); assertThat(created.getMaxPlayers()).isEqualTo(MAX_PLAYERS); assertThat(created.getGameMechanics()).isEqualTo(GAME_MECHANICS); assertThat(created.getBoardGameGeekId()).isEqualTo(BOARD_GAME_GEEK_ID); }