SaveScoreForGameSideUseCaseService.java

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

Active mutators

Tests examined


Report generated by PIT 1.16.1