From 102b25f18d9b269c58d15677f10cd71c15003c4b Mon Sep 17 00:00:00 2001 From: Mike Vink Date: Fri, 25 Jun 2021 11:49:50 +0200 Subject: ending game from a steal should work now --- domain/src/main/java/mancala/domain/SmallBowl.java | 1 + domain/src/test/java/mancala/domain/BowlTest.java | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/domain/src/main/java/mancala/domain/SmallBowl.java b/domain/src/main/java/mancala/domain/SmallBowl.java index b750f61..b62ef43 100644 --- a/domain/src/main/java/mancala/domain/SmallBowl.java +++ b/domain/src/main/java/mancala/domain/SmallBowl.java @@ -88,6 +88,7 @@ public class SmallBowl extends Bowl { getMyOwner().switchTurn(); + endTheGame(); } SmallBowl getNextSmallBowl() { diff --git a/domain/src/test/java/mancala/domain/BowlTest.java b/domain/src/test/java/mancala/domain/BowlTest.java index 0614201..e2eedb9 100644 --- a/domain/src/test/java/mancala/domain/BowlTest.java +++ b/domain/src/test/java/mancala/domain/BowlTest.java @@ -272,7 +272,7 @@ class BowlTest { class endGameBehaviour { @Test - void given_all_small_bowls_of_the_player_are_empty_when_a_play_ends_then_tell_players_who_won() { + void given_all_small_bowls_of_the_player_that_did_the_turn_are_empty_when_a_play_ends_then_tell_players_who_won() { setupGameSituationAndFailIfInvalid(new int[] {0,0,0,0,0,1,0,4,4,4,4,4,4,0}); Player player = referenceSmallBowl.getMyOwner(); Player opponent = referenceSmallBowl.getNextSmallBowlTimes(6).getMyOwner(); @@ -302,6 +302,15 @@ class BowlTest { assertTrue(referenceSmallBowl.getMyOwner().won() && referenceSmallBowl.getMyOwner().getOpponent().won()); } + @Test + void given_that_the_opponents_board_is_emptied_by_stealing_when_player_made_a_play_then_tell_players_who_won() { + setupGameSituationAndFailIfInvalid(new int[] {1,0,0,0,1,0,0,1,0,0,0,0,0,0}); + System.out.println(referenceSmallBowl.stateString()); + referenceSmallBowl.getNextSmallBowlTimes(4).play(); + System.out.println(referenceSmallBowl.stateString()); + assertTrue(referenceSmallBowl.getMyOwner().won() || referenceSmallBowl.getMyOwner().getOpponent().won()); + } + } } } \ No newline at end of file -- cgit v1.2.3