1
|
|
package org.hplr.game.core.usecases.service; |
2
|
|
|
3
|
|
import lombok.RequiredArgsConstructor; |
4
|
|
|
5
|
|
import org.hplr.game.core.model.Game; |
6
|
|
import org.hplr.game.core.usecases.port.dto.SaveScoreForGameSideDto; |
7
|
|
import org.hplr.game.core.usecases.port.in.SaveScoreForGameSideUseCaseInterface; |
8
|
|
import org.hplr.game.core.usecases.port.out.command.SaveScoreCommandInterface; |
9
|
|
import org.hplr.game.core.usecases.port.out.query.SelectGameByGameIdQueryInterface; |
10
|
|
|
11
|
|
import org.hplr.elo.core.model.vo.Score; |
12
|
|
|
13
|
|
import org.hplr.library.exception.HPLRIllegalArgumentException; |
14
|
|
|
15
|
|
import org.springframework.stereotype.Service; |
16
|
|
|
17
|
|
import java.util.UUID; |
18
|
|
|
19
|
|
@Service |
20
|
|
@RequiredArgsConstructor |
21
|
|
public class SaveScoreForGameSideUseCaseService implements SaveScoreForGameSideUseCaseInterface { |
22
|
|
|
23
|
|
final SelectGameByGameIdQueryInterface selectGameByGameIdQueryInterface; |
24
|
|
final SaveScoreCommandInterface saveScoreCommandInterface; |
25
|
|
|
26
|
|
@Override |
27
|
|
public UUID saveScoreForGameSide(SaveScoreForGameSideDto saveScoreForGameSideDto) { |
28
|
1
1. lambda$saveScoreForGameSide$0 : replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$0 → KILLED
|
Game game = selectGameByGameIdQueryInterface.selectGameByGameId(saveScoreForGameSideDto.gameId()).map(Game::fromDto).orElseThrow(()-> new HPLRIllegalArgumentException("Game not found")); |
29
|
1
1. saveScoreForGameSide : negated conditional → KILLED
|
if(saveScoreForGameSideDto.gameSideId().equals(game.getFirstGameSide().getSideId().sideId())){ |
30
|
3
1. lambda$saveScoreForGameSide$2 : replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$2 → KILLED
2. lambda$saveScoreForGameSide$1 : replaced boolean return with false for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$1 → KILLED
3. lambda$saveScoreForGameSide$1 : replaced boolean return with true for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$1 → KILLED
|
Score score = game.getFirstGameSide().getScorePerTurnList().stream().filter(scoreLambda -> saveScoreForGameSideDto.turnNumber().equals(scoreLambda.turnNumber())).findFirst().orElseThrow(() -> new HPLRIllegalArgumentException("Turn not found")); |
31
|
|
game.getFirstGameSide().getScorePerTurnList().remove(score); |
32
|
|
score = new Score(saveScoreForGameSideDto.turnNumber(),saveScoreForGameSideDto.score(), saveScoreForGameSideDto.table()); |
33
|
|
game.getFirstGameSide().getScorePerTurnList().add(score); |
34
|
1
1. saveScoreForGameSide : removed call to org/hplr/game/core/usecases/port/out/command/SaveScoreCommandInterface::saveScore → KILLED
|
saveScoreCommandInterface.saveScore(game.toSnapshot(), score,true); |
35
|
|
|
36
|
|
|
37
|
|
|
38
|
|
} |
39
|
1
1. saveScoreForGameSide : negated conditional → KILLED
|
else if(saveScoreForGameSideDto.gameSideId().equals(game.getSecondGameSide().getSideId().sideId())){ |
40
|
3
1. lambda$saveScoreForGameSide$3 : replaced boolean return with true for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$3 → KILLED
2. lambda$saveScoreForGameSide$4 : replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$4 → KILLED
3. lambda$saveScoreForGameSide$3 : replaced boolean return with false for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$3 → KILLED
|
Score score = game.getSecondGameSide().getScorePerTurnList().stream().filter(scoreLambda -> saveScoreForGameSideDto.turnNumber().equals(scoreLambda.turnNumber())).findFirst().orElseThrow(() -> new HPLRIllegalArgumentException("Turn not found")); |
41
|
|
game.getSecondGameSide().getScorePerTurnList().remove(score); |
42
|
|
score = new Score(saveScoreForGameSideDto.turnNumber(),saveScoreForGameSideDto.score(), saveScoreForGameSideDto.table()); |
43
|
|
game.getSecondGameSide().getScorePerTurnList().add(score); |
44
|
1
1. saveScoreForGameSide : removed call to org/hplr/game/core/usecases/port/out/command/SaveScoreCommandInterface::saveScore → KILLED
|
saveScoreCommandInterface.saveScore(game.toSnapshot(), score,false); |
45
|
|
} |
46
|
1
1. saveScoreForGameSide : replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::saveScoreForGameSide → KILLED
|
return game.getGameId().gameId(); |
47
|
|
} |
48
|
|
} |
| | Mutations |
28 |
|
1.1 Location : lambda$saveScoreForGameSide$0 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_no_game_and_throw_HPLRIllegalArgumentException()] replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$0 → KILLED
|
29 |
|
1.1 Location : saveScoreForGameSide Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] negated conditional → KILLED
|
30 |
|
1.1 Location : lambda$saveScoreForGameSide$2 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$2 → KILLED 2.2 Location : lambda$saveScoreForGameSide$1 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_and_succeed()] replaced boolean return with false for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$1 → KILLED 3.3 Location : lambda$saveScoreForGameSide$1 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] replaced boolean return with true for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$1 → KILLED
|
34 |
|
1.1 Location : saveScoreForGameSide Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_and_succeed()] removed call to org/hplr/game/core/usecases/port/out/command/SaveScoreCommandInterface::saveScore → KILLED
|
39 |
|
1.1 Location : saveScoreForGameSide Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_second_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] negated conditional → KILLED
|
40 |
|
1.1 Location : lambda$saveScoreForGameSide$3 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_second_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] replaced boolean return with true for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$3 → KILLED 2.2 Location : lambda$saveScoreForGameSide$4 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_second_side_with_wrong_turn_and_throw_HPLRIllegalArgumentException()] replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$4 → KILLED 3.3 Location : lambda$saveScoreForGameSide$3 Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_second_side_and_succeed()] replaced boolean return with false for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::lambda$saveScoreForGameSide$3 → KILLED
|
44 |
|
1.1 Location : saveScoreForGameSide Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_second_side_and_succeed()] removed call to org/hplr/game/core/usecases/port/out/command/SaveScoreCommandInterface::saveScore → KILLED
|
46 |
|
1.1 Location : saveScoreForGameSide Killed by : org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests.[engine:junit-jupiter]/[class:org.hplr.game.core.usecases.service.SaveScoreForGameSideUseCaseServiceTests]/[method:try_to_save_score_find_game_and_save_for_first_side_and_succeed()] replaced return value with null for org/hplr/game/core/usecases/service/SaveScoreForGameSideUseCaseService::saveScoreForGameSide → KILLED
|