3 Commits

Author SHA1 Message Date
d8c276d979 maj
All checks were successful
rock-paper-scissors/pipeline/pr-main This commit looks good
2025-11-27 11:45:21 +01:00
aa51b22202 maj 2025-11-27 10:40:03 +01:00
2f0d8e6545 maj 2025-11-27 10:25:55 +01:00
5 changed files with 19 additions and 8 deletions

View File

@@ -3,13 +3,15 @@ package fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.domain;
public enum Move {
ROCK,
PAPER,
SCISSORS;
SCISSORS,
PUIT;
public boolean beats(Move other) {
return switch (this) {
case ROCK -> other == SCISSORS;
case PAPER -> other == ROCK;
case PAPER -> other == ROCK || other == PUIT;
case SCISSORS -> other == PAPER;
case PUIT -> other == SCISSORS || other == ROCK;
};
}
}

View File

@@ -15,7 +15,7 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/play")
@Tag(name = "Play", description = "Rock Paper Scissors game endpoints")
@Tag(name = "Play", description = "Rock Paper Scissors Puit game endpoints")
public class PlayController {
private final RockPaperScissorsPlay rockPaperScissorsPlay;
@@ -26,7 +26,7 @@ public class PlayController {
@Operation(
summary = "Play a round",
description = "Play a round of Rock Paper Scissors against the CPU",
description = "Play a round of Rock Paper Scissors PUIT against the CPU",
responses = {
@ApiResponse(
responseCode = "200",

View File

@@ -46,7 +46,9 @@ public class PlayControllerTest {
public static Stream<Arguments> scenario() {
return Stream.of(
Arguments.of(Move.ROCK, Move.SCISSORS, WIN),
Arguments.of(Move.ROCK, Move.PAPER, LOOSE)
Arguments.of(Move.ROCK, Move.PAPER, LOOSE),
Arguments.of(Move.ROCK, Move.PUIT, LOOSE)
);
}

View File

@@ -14,7 +14,7 @@ class MoveTest {
@Test
void should_check_move_size(){
Assertions.assertEquals(3, Move.values().length);
Assertions.assertEquals(4, Move.values().length);
}
@ParameterizedTest(name = "{0} should beat {1}")
@@ -33,7 +33,12 @@ class MoveTest {
return Stream.of(
Arguments.of(Move.ROCK,Move.SCISSORS),
Arguments.of(Move.PAPER,Move.ROCK),
Arguments.of(Move.SCISSORS,Move.PAPER)
Arguments.of(Move.PAPER,Move.PUIT),
Arguments.of(Move.SCISSORS,Move.PAPER),
Arguments.of(Move.PUIT,Move.ROCK),
Arguments.of(Move.PUIT,Move.SCISSORS)
);
}
}

View File

@@ -20,9 +20,11 @@ class RandomCpuPickerTest {
obtainedMoves.add(picker.pick());
}
assertEquals(3, obtainedMoves.size());
assertEquals(4, obtainedMoves.size());
assertTrue(obtainedMoves.contains(Move.ROCK));
assertTrue(obtainedMoves.contains(Move.PAPER));
assertTrue(obtainedMoves.contains(Move.SCISSORS));
assertTrue(obtainedMoves.contains(Move.PUIT));
}
}