4 Commits

Author SHA1 Message Date
8be69ca203 Merge pull request 'RH-add-WELL' (#1) from RH-add-WELL into main
Reviewed-on: hochlaf/rock-paper-scissors#1
2025-11-27 11:15:15 +01:00
78cdf7c628 Ajout de l'outcome feuille bat puit 2025-11-27 10:36:53 +01:00
93428c09d7 Ajout du puit (WELL) 2025-11-27 10:17:32 +01:00
9b1af5029f Merge pull request 'update-code' (#6) from update-code into main
All checks were successful
rock-paper-scissors/pipeline/head This commit looks good
Reviewed-on: #6
2025-11-26 17:06:38 +01:00
3 changed files with 11 additions and 6 deletions

View File

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

View File

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

View File

@@ -1,7 +1,6 @@
package fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.spi; package fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.spi;
import fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.domain.Move; import fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.domain.Move;
import fr.iut_fbleau.info.but3.automation.rock_paper_scissors.play.spi.RandomCpuPicker;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import java.util.HashSet; import java.util.HashSet;
@@ -20,9 +19,10 @@ class RandomCpuPickerTest {
obtainedMoves.add(picker.pick()); obtainedMoves.add(picker.pick());
} }
assertEquals(3, obtainedMoves.size()); assertEquals(4, obtainedMoves.size());
assertTrue(obtainedMoves.contains(Move.ROCK)); assertTrue(obtainedMoves.contains(Move.ROCK));
assertTrue(obtainedMoves.contains(Move.PAPER)); assertTrue(obtainedMoves.contains(Move.PAPER));
assertTrue(obtainedMoves.contains(Move.SCISSORS)); assertTrue(obtainedMoves.contains(Move.SCISSORS));
assertTrue(obtainedMoves.contains(Move.WELL));
} }
} }