initial commit
This commit is contained in:
25
test/cards/CardTest.java
Normal file
25
test/cards/CardTest.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package cards;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import static cards.Rank.THREE;
|
||||
import static cards.Rank.TWO;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
public class CardTest {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void compareToTest() {
|
||||
assertEquals(0, c(TWO, HEARTS).compareTo(c(TWO, HEARTS)));
|
||||
assertTrue(c(TWO, HEARTS).compareTo(c(TWO, SPADES)) < 0);
|
||||
assertTrue(c(TWO, SPADES).compareTo(c(TWO, HEARTS)) > 0);
|
||||
assertTrue(c(TWO, SPADES).compareTo(c(THREE, HEARTS)) < 0);
|
||||
assertTrue(c(THREE, HEARTS).compareTo(c(TWO, SPADES)) > 0);
|
||||
}
|
||||
}
|
37
test/cards/RankTest.java
Normal file
37
test/cards/RankTest.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package cards;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.FIVE;
|
||||
import static cards.Rank.FOUR;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.SIX;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Rank.THREE;
|
||||
import static cards.Rank.TWO;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
public class RankTest {
|
||||
@Test
|
||||
public void toStringTest() {
|
||||
assertEquals("2", TWO.toString());
|
||||
assertEquals("3", THREE.toString());
|
||||
assertEquals("4", FOUR.toString());
|
||||
assertEquals("5", FIVE.toString());
|
||||
assertEquals("6", SIX.toString());
|
||||
assertEquals("7", SEVEN.toString());
|
||||
assertEquals("8", EIGHT.toString());
|
||||
assertEquals("9", NINE.toString());
|
||||
assertEquals("10", TEN.toString());
|
||||
assertEquals("J", JACK.toString());
|
||||
assertEquals("Q", QUEEN.toString());
|
||||
assertEquals("K", KING.toString());
|
||||
assertEquals("A", ACE.toString());
|
||||
}
|
||||
}
|
19
test/cards/SuitTest.java
Normal file
19
test/cards/SuitTest.java
Normal file
@@ -0,0 +1,19 @@
|
||||
package cards;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
public class SuitTest {
|
||||
@Test
|
||||
public void toStringTest() {
|
||||
assertEquals("♥︎", HEARTS.toString());
|
||||
assertEquals("♦︎", DIAMONDS.toString());
|
||||
assertEquals("♣︎", CLUBS.toString());
|
||||
assertEquals("♠︎", SPADES.toString());
|
||||
}
|
||||
}
|
34
test/cards/maumau/MauMauDeckTest.java
Normal file
34
test/cards/maumau/MauMauDeckTest.java
Normal file
@@ -0,0 +1,34 @@
|
||||
package cards.maumau;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.SIX;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Rank.TWO;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
|
||||
public class MauMauDeckTest {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dealCardsTest() {
|
||||
final List<Card> deck = MauMauDeck.makeDeck(5);
|
||||
assertEquals(160, deck.size());
|
||||
assertFalse(deck.contains(c(TWO, DIAMONDS)));
|
||||
assertFalse(deck.contains(c(SIX, SPADES)));
|
||||
assertEquals(5, deck.stream().filter(c -> c.equals(c(TEN, HEARTS))).count());
|
||||
assertEquals(5, deck.stream().filter(c -> c.equals(c(ACE, SPADES))).count());
|
||||
}
|
||||
}
|
43
test/cards/maumau/model/CardHandlerTest.java
Normal file
43
test/cards/maumau/model/CardHandlerTest.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
public class CardHandlerTest {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dealCardsTest() {
|
||||
final List<Card> deck = List.of(c(JACK, DIAMONDS), c(SEVEN, CLUBS), c(QUEEN, DIAMONDS), c(NINE, CLUBS), c(ACE, SPADES), c(NINE, SPADES), c(ACE, DIAMONDS), c(EIGHT, CLUBS), c(EIGHT, DIAMONDS), c(KING, HEARTS), c(ACE, HEARTS), c(SEVEN, SPADES), c(KING, CLUBS), c(KING, SPADES), c(QUEEN, SPADES), c(SEVEN, DIAMONDS), c(TEN, DIAMONDS), c(EIGHT, HEARTS), c(KING, DIAMONDS), c(QUEEN, CLUBS), c(JACK, HEARTS), c(EIGHT, SPADES), c(TEN, CLUBS), c(ACE, CLUBS), c(JACK, CLUBS), c(QUEEN, HEARTS), c(SEVEN, HEARTS), c(JACK, SPADES), c(NINE, DIAMONDS), c(NINE, HEARTS), c(TEN, HEARTS), c(TEN, SPADES));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
assertTrue(jacqueline.getCards().isEmpty());
|
||||
assertTrue(chantal.getCards().isEmpty());
|
||||
game.getCardHandler().dealCards();
|
||||
assertEquals("[J♦︎, Q♦︎, A♠︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 9♠︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals(c(ACE, HEARTS), game.getCardHandler().top());
|
||||
}
|
||||
}
|
181
test/cards/maumau/model/MauMau1Test.java
Normal file
181
test/cards/maumau/model/MauMau1Test.java
Normal file
@@ -0,0 +1,181 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau1Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(JACK, DIAMONDS), c(SEVEN, CLUBS), c(QUEEN, DIAMONDS), c(NINE, CLUBS), c(ACE, SPADES), c(NINE, SPADES), c(ACE, DIAMONDS), c(EIGHT, CLUBS), c(EIGHT, DIAMONDS), c(KING, HEARTS), c(ACE, HEARTS), c(SEVEN, SPADES), c(KING, CLUBS), c(KING, SPADES), c(QUEEN, SPADES), c(SEVEN, DIAMONDS), c(TEN, DIAMONDS), c(EIGHT, HEARTS), c(KING, DIAMONDS), c(QUEEN, CLUBS), c(JACK, HEARTS), c(EIGHT, SPADES), c(TEN, CLUBS), c(ACE, CLUBS), c(JACK, CLUBS), c(QUEEN, HEARTS), c(SEVEN, HEARTS), c(JACK, SPADES), c(NINE, DIAMONDS), c(NINE, HEARTS), c(TEN, HEARTS), c(TEN, SPADES));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, 7♣︎, Q♦︎, 9♣︎, A♠︎, 9♠︎, A♦︎, 8♣︎, 8♦︎, K♥︎, A♥︎, 7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, Q♦︎, A♠︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 9♠︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, 9♣︎, 9♠︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, Q♦︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, Q♦︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♦︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, A♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, A♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎, K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, 9♣︎, 8♣︎, K♥︎, 7♠︎, K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getRanking());
|
||||
assertEquals("[K♠︎, Q♠︎, 7♦︎, 10♦︎, 8♥︎, K♦︎, Q♣︎, J♥︎, 8♠︎, 10♣︎, A♣︎, J♣︎, Q♥︎, 7♥︎, J♠︎, 9♦︎, 9♥︎, 10♥︎, 10♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 8♦︎, J♦︎, 9♠︎, A♠︎, A♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
246
test/cards/maumau/model/MauMau2Test.java
Normal file
246
test/cards/maumau/model/MauMau2Test.java
Normal file
@@ -0,0 +1,246 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau2Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(KING, SPADES), c(QUEEN, DIAMONDS), c(EIGHT, DIAMONDS), c(ACE, SPADES), c(TEN, SPADES), c(EIGHT, HEARTS), c(QUEEN, SPADES), c(ACE, DIAMONDS), c(KING, DIAMONDS), c(SEVEN, SPADES), c(TEN, CLUBS), c(ACE, HEARTS), c(QUEEN, CLUBS), c(NINE, HEARTS), c(KING, CLUBS), c(SEVEN, CLUBS), c(JACK, DIAMONDS), c(NINE, DIAMONDS), c(ACE, CLUBS), c(EIGHT, SPADES), c(TEN, DIAMONDS), c(JACK, SPADES), c(JACK, HEARTS), c(JACK, CLUBS), c(TEN, HEARTS), c(KING, HEARTS), c(QUEEN, HEARTS), c(SEVEN, HEARTS), c(SEVEN, DIAMONDS), c(EIGHT, CLUBS), c(NINE, CLUBS), c(NINE, SPADES));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[K♠︎, Q♦︎, 8♦︎, A♠︎, 10♠︎, 8♥︎, Q♠︎, A♦︎, K♦︎, 7♠︎, 10♣︎, A♥︎, Q♣︎, 9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 8♦︎, 10♠︎, Q♠︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♣︎, 9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♠︎, 8♦︎, Q♠︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♣︎, 9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 8♦︎, Q♠︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♣︎, 9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 8♦︎, Q♠︎, K♦︎, A♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 8♦︎, Q♠︎, K♦︎, A♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(KING, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, A♠︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♠︎, K♦︎, A♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♠︎, K♦︎, A♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, 8♥︎, A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♠︎, K♦︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♠︎, K♦︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, K♦︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎, 8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♥︎, 9♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, 9♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, Q♠︎, Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getRanking());
|
||||
assertEquals("[K♣︎, 7♣︎, J♦︎, 9♦︎, A♣︎, 8♠︎, 10♦︎, J♠︎, J♥︎, J♣︎, 10♥︎, K♥︎, Q♥︎, 7♥︎, 7♦︎, 8♣︎, 9♣︎, 9♠︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, Q♠︎, Q♦︎, K♦︎, 8♦︎, A♦︎, A♥︎, A♠︎, K♠︎, 7♠︎, 10♠︎, 10♣︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
173
test/cards/maumau/model/MauMau3Test.java
Normal file
173
test/cards/maumau/model/MauMau3Test.java
Normal file
@@ -0,0 +1,173 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.GAME_CANCELED;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau3Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(SEVEN, SPADES), c(SEVEN, DIAMONDS), c(SEVEN, DIAMONDS), c(SEVEN, SPADES), c(SEVEN, SPADES), c(SEVEN, HEARTS), c(SEVEN, SPADES), c(ACE, DIAMONDS), c(KING, DIAMONDS), c(SEVEN, SPADES), c(TEN, HEARTS), c(ACE, HEARTS), c(QUEEN, CLUBS));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, 7♦︎, 7♦︎, 7♠︎, 7♠︎, 7♥︎, 7♠︎, A♦︎, K♦︎, 7♠︎, 10♥︎, A♥︎, Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, 7♦︎, 7♠︎, 7♠︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 7♠︎, 7♥︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, 7♠︎, 7♥︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, 7♦︎, 7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, 7♦︎, 7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 7♠︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, 7♠︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(2, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(3, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(4, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, 7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(5, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 7♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(6, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, 7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(7, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, 7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(7, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♠︎, 7♠︎, 7♠︎, 7♠︎, 7♦︎, 7♦︎, 7♥︎, 10♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(8, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(GAME_CANCELED, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
}
|
||||
}
|
368
test/cards/maumau/model/MauMau4Test.java
Normal file
368
test/cards/maumau/model/MauMau4Test.java
Normal file
@@ -0,0 +1,368 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau4Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(TEN, DIAMONDS), c(KING, DIAMONDS), c(JACK, CLUBS), c(TEN, SPADES), c(EIGHT, SPADES), c(JACK, HEARTS), c(SEVEN, DIAMONDS), c(JACK, SPADES), c(SEVEN, SPADES), c(QUEEN, SPADES), c(KING, SPADES), c(NINE, CLUBS), c(QUEEN, CLUBS), c(EIGHT, CLUBS), c(NINE, SPADES), c(TEN, CLUBS), c(ACE, HEARTS), c(SEVEN, HEARTS), c(NINE, DIAMONDS), c(EIGHT, HEARTS), c(SEVEN, CLUBS), c(QUEEN, DIAMONDS), c(ACE, SPADES), c(KING, HEARTS), c(QUEEN, HEARTS), c(EIGHT, DIAMONDS), c(ACE, CLUBS), c(TEN, HEARTS), c(JACK, DIAMONDS), c(NINE, HEARTS), c(KING, CLUBS), c(ACE, DIAMONDS));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, K♦︎, J♣︎, 10♠︎, 8♠︎, J♥︎, 7♦︎, J♠︎, 7♠︎, Q♠︎, K♠︎, 9♣︎, Q♣︎, 8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, J♣︎, 8♠︎, 7♦︎, 7♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♦︎, 10♠︎, J♥︎, J♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♣︎, Q♣︎, 8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, 10♠︎, J♥︎, J♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, J♣︎, 8♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♣︎, Q♣︎, 8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, 10♠︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, J♣︎, 8♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, J♣︎, 8♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♦︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, J♣︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♦︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♦︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎, 10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, J♠︎, Q♠︎, 9♣︎, Q♣︎, 8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, HEARTS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♣︎, Q♣︎, 8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(CLUBS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♣︎, Q♣︎, 8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♣︎, Q♣︎, 8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♣︎, Q♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, Q♠︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♥︎, 9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♠︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, SPADES));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(SPADES);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎, A♥︎, 7♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getRanking());
|
||||
assertEquals("[8♥︎, 7♣︎, Q♦︎, A♠︎, K♥︎, Q♥︎, 8♦︎, A♣︎, 10♥︎, J♦︎, 9♥︎, K♣︎, A♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, J♠︎, Q♠︎, Q♣︎, 10♣︎, 9♣︎, 8♣︎, J♥︎, 7♦︎, K♦︎, J♣︎, 8♠︎, 10♠︎, 7♠︎, K♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
533
test/cards/maumau/model/MauMau5Test.java
Normal file
533
test/cards/maumau/model/MauMau5Test.java
Normal file
@@ -0,0 +1,533 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau5Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(ACE, DIAMONDS), c(NINE, HEARTS), c(JACK, HEARTS), c(KING, SPADES), c(SEVEN, CLUBS), c(NINE, CLUBS), c(SEVEN, HEARTS), c(KING, DIAMONDS), c(TEN, HEARTS), c(ACE, CLUBS), c(JACK, SPADES), c(ACE, SPADES), c(SEVEN, DIAMONDS), c(ACE, HEARTS), c(QUEEN, SPADES), c(EIGHT, CLUBS), c(TEN, DIAMONDS), c(NINE, DIAMONDS), c(EIGHT, DIAMONDS), c(SEVEN, SPADES), c(QUEEN, HEARTS), c(JACK, CLUBS), c(KING, CLUBS), c(EIGHT, SPADES), c(JACK, DIAMONDS), c(EIGHT, HEARTS), c(QUEEN, CLUBS), c(NINE, SPADES), c(TEN, CLUBS), c(KING, HEARTS), c(TEN, SPADES), c(QUEEN, DIAMONDS));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 9♥︎, J♥︎, K♠︎, 7♣︎, 9♣︎, 7♥︎, K♦︎, 10♥︎, A♣︎, J♠︎, A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, J♥︎, 7♣︎, 7♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎, 9♣︎, K♦︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, HEARTS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 7♣︎, 7♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎, 9♣︎, K♦︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(HEARTS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, 9♣︎, K♦︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 7♣︎, 7♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 7♣︎, 7♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 7♣︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♠︎, 7♦︎, A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎, A♠︎, 7♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 7♣︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 7♣︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎, A♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎, A♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♥︎, Q♠︎, 8♣︎, 10♦︎, 9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(2, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎, A♠︎, A♥︎, Q♠︎, 8♣︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, 9♣︎, K♦︎, A♣︎, A♠︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, A♣︎, A♠︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, K♦︎, A♣︎, A♠︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♦︎, 10♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, 10♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, A♠︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, K♦︎, A♠︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♥︎, 9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, K♦︎, A♥︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, 9♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♥︎, 9♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, K♦︎, Q♠︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 8♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, K♦︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(NINE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, K♦︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, Q♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(KING, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♠︎, Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, 8♠︎, J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, K♣︎, 8♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(CLUBS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(KING, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎, 9♠︎, 10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(SPADES);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, Q♣︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(SPADES, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, Q♣︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getRanking());
|
||||
assertEquals("[K♥︎, 10♠︎, Q♦︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, J♦︎, K♣︎, J♣︎, Q♥︎, Q♠︎, 8♠︎, 7♠︎, K♠︎, K♦︎, 9♦︎, 8♦︎, 10♦︎, 10♥︎, A♥︎, A♠︎, A♦︎, A♣︎, 9♣︎, 8♣︎, 7♣︎, 7♦︎, 7♥︎, 9♥︎, J♥︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
578
test/cards/maumau/model/MauMau6Test.java
Normal file
578
test/cards/maumau/model/MauMau6Test.java
Normal file
@@ -0,0 +1,578 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau6Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(QUEEN, SPADES), c(TEN, SPADES), c(SEVEN, DIAMONDS), c(EIGHT, DIAMONDS), c(ACE, SPADES), c(QUEEN, CLUBS), c(EIGHT, SPADES), c(NINE, CLUBS), c(SEVEN, SPADES), c(ACE, CLUBS), c(EIGHT, HEARTS), c(QUEEN, HEARTS), c(JACK, DIAMONDS), c(KING, CLUBS), c(NINE, HEARTS), c(EIGHT, CLUBS), c(ACE, DIAMONDS), c(QUEEN, DIAMONDS), c(JACK, HEARTS), c(TEN, HEARTS), c(KING, HEARTS), c(KING, DIAMONDS), c(JACK, SPADES), c(KING, SPADES), c(TEN, CLUBS), c(NINE, SPADES), c(JACK, CLUBS), c(SEVEN, CLUBS), c(ACE, HEARTS), c(NINE, DIAMONDS), c(TEN, DIAMONDS), c(SEVEN, HEARTS));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, 10♠︎, 7♦︎, 8♦︎, A♠︎, Q♣︎, 8♠︎, 9♣︎, 7♠︎, A♣︎, 8♥︎, Q♥︎, J♦︎, K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, 7♦︎, A♠︎, 8♠︎, 7♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♠︎, 8♦︎, Q♣︎, 9♣︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♦︎, K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, 7♦︎, A♠︎, 7♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♠︎, 8♦︎, Q♣︎, 9♣︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♦︎, K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♠︎, 8♦︎, Q♣︎, 9♣︎, A♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, 7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, J♦︎, K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♠︎, 8♦︎, Q♣︎, 9♣︎, A♣︎, Q♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, 7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, 7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎, 9♣︎, A♣︎, Q♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♣︎, 9♣︎, A♣︎, Q♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎, 9♣︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, 9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♣︎, 9♣︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, A♠︎, K♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, A♠︎, K♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, 9♣︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(KING, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 9♣︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, A♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, 8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, A♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, A♠︎, 9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, A♠︎, 9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♦︎, 9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 8♣︎, A♦︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, A♦︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, J♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, J♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, HEARTS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, Q♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♥︎, K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, K♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, 10♥︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, 10♥︎, K♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, K♥︎, J♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, K♥︎, J♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(KING, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, 10♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, J♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, J♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, SPADES));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♠︎, 10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(CLUBS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♣︎, 9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, 10♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♣︎, 9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(EIGHT, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♣︎, A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎, 7♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♥︎, 9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♠︎, J♣︎, 7♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♦︎, 7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎, 9♦︎, 10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎, 9♦︎, 10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(SPADES);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎, 9♦︎, 10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(KING, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♥︎, K♠︎, A♥︎, 9♦︎, 10♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♠︎, J♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 8♣︎, 10♣︎, J♠︎, 10♥︎, K♥︎, K♦︎, Q♦︎, J♥︎, A♦︎, 8♦︎, 7♦︎, J♦︎, A♠︎, A♣︎, 9♣︎, K♣︎, Q♣︎, Q♥︎, Q♠︎, 10♠︎, 7♠︎, 8♠︎, 8♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
302
test/cards/maumau/model/MauMau7Test.java
Normal file
302
test/cards/maumau/model/MauMau7Test.java
Normal file
@@ -0,0 +1,302 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau7Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(EIGHT, DIAMONDS), c(JACK, DIAMONDS), c(ACE, DIAMONDS), c(NINE, CLUBS), c(TEN, HEARTS), c(TEN, DIAMONDS), c(NINE, SPADES), c(SEVEN, HEARTS), c(QUEEN, CLUBS), c(ACE, SPADES), c(JACK, SPADES), c(JACK, CLUBS), c(SEVEN, DIAMONDS), c(JACK, HEARTS), c(TEN, SPADES), c(QUEEN, DIAMONDS), c(EIGHT, SPADES), c(QUEEN, SPADES), c(NINE, DIAMONDS), c(QUEEN, HEARTS), c(KING, CLUBS), c(KING, HEARTS), c(NINE, HEARTS), c(KING, DIAMONDS), c(EIGHT, HEARTS), c(EIGHT, CLUBS), c(TEN, CLUBS), c(SEVEN, CLUBS), c(SEVEN, SPADES), c(ACE, HEARTS), c(KING, SPADES), c(ACE, CLUBS));
|
||||
final MauMau game = new MauMau(5, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, J♦︎, A♦︎, 9♣︎, 10♥︎, 10♦︎, 9♠︎, 7♥︎, Q♣︎, A♠︎, J♠︎, J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, A♦︎, 10♥︎, 9♠︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 9♣︎, 10♦︎, 7♥︎, A♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(NINE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♣︎, 10♦︎, 7♥︎, A♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, A♦︎, 10♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, A♦︎, 10♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 9♣︎, 10♦︎, 7♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♣︎, 10♦︎, 7♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♥︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 9♣︎, 7♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♣︎, 7♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 9♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 7♦︎, J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♣︎, J♣︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, 9♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♣︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♦︎, 9♣︎, J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♣︎, J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(CLUBS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♣︎, J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♣︎, J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♦︎, 8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, 10♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, J♣︎, Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♠︎, Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, J♣︎, Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, 9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(QUEEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♥︎, 10♠︎, 8♠︎, Q♠︎]", chantal.getCards().toString());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getRanking());
|
||||
assertEquals("[9♦︎, Q♥︎, K♣︎, K♥︎, 9♥︎, K♦︎, 8♥︎, 8♣︎, 10♣︎, 7♣︎, 7♠︎, A♥︎, K♠︎, A♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, J♣︎, 9♣︎, Q♣︎, J♦︎, 7♦︎, 7♥︎, 10♥︎, 10♦︎, A♦︎, A♠︎, 9♠︎, J♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
463
test/cards/maumau/model/MauMau8Test.java
Normal file
463
test/cards/maumau/model/MauMau8Test.java
Normal file
@@ -0,0 +1,463 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau8Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(NINE, DIAMONDS), c(QUEEN, SPADES), c(EIGHT, SPADES), c(TEN, CLUBS), c(ACE, DIAMONDS), c(JACK, CLUBS), c(NINE, SPADES), c(QUEEN, DIAMONDS), c(EIGHT, HEARTS), c(TEN, SPADES), c(TEN, DIAMONDS), c(SEVEN, HEARTS), c(KING, HEARTS), c(SEVEN, CLUBS), c(NINE, HEARTS), c(SEVEN, SPADES), c(NINE, CLUBS), c(ACE, HEARTS), c(JACK, DIAMONDS), c(KING, DIAMONDS), c(EIGHT, DIAMONDS), c(JACK, SPADES), c(QUEEN, CLUBS), c(SEVEN, DIAMONDS), c(EIGHT, CLUBS), c(ACE, CLUBS), c(QUEEN, HEARTS), c(KING, CLUBS), c(TEN, HEARTS), c(ACE, SPADES), c(KING, SPADES), c(JACK, HEARTS));
|
||||
final MauMau game = new MauMau(4, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
final Player cheyenne = game.addPlayer("Cheyenne");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, Q♠︎, 8♠︎, 10♣︎, A♦︎, J♣︎, 9♠︎, Q♦︎, 8♥︎, 10♠︎, 10♦︎, 7♥︎, K♥︎, 7♣︎, 9♥︎, 7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎, 7♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♣︎, 9♥︎, 7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎, 7♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, 7♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♥︎, 7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎, 7♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, 7♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(SEVEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, 7♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♠︎, 9♣︎, A♥︎, J♦︎, K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(2, game.get7Counter());
|
||||
|
||||
chantal.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎, 7♠︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
cheyenne.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♠︎, J♣︎, 8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(EIGHT, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♠︎, A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♣︎, 8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[J♣︎, 8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseSuit(HEARTS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[J♠︎, Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♥︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, J♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♥︎, K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, J♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(EIGHT, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, A♥︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, J♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, J♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[Q♣︎, 7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎, J♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, Q♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, SPADES));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, Q♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(CLUBS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, 9♣︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎, Q♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(CLUBS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, 8♦︎, Q♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(QUEEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♣︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, 10♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎, 8♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, Q♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♦︎, Q♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[K♦︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[]", cheyenne.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.maumau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[9♦︎, 9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(NINE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[A♦︎, J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(ACE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[9♠︎, 10♠︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[7♦︎, 8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[J♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[9♠︎, 10♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(chantal, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[9♠︎, 10♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseSuit(DIAMONDS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne), game.getRanking());
|
||||
assertEquals("[9♠︎, 10♠︎, 7♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(cheyenne, chantal, jacqueline), game.getRanking());
|
||||
assertEquals("[8♣︎, A♣︎, Q♥︎, K♣︎, 10♥︎, A♠︎, K♠︎, J♥︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, A♦︎, 9♦︎, K♦︎, Q♦︎, 8♦︎, 10♦︎, 10♣︎, Q♣︎, 9♣︎, J♠︎, A♥︎, 8♥︎, 9♥︎, J♣︎, Q♠︎, 8♠︎, 7♠︎, 7♣︎, 7♥︎, K♥︎]", game.getDiscardPile().toString());
|
||||
assertEquals(DIAMONDS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
403
test/cards/maumau/model/MauMau9Test.java
Normal file
403
test/cards/maumau/model/MauMau9Test.java
Normal file
@@ -0,0 +1,403 @@
|
||||
package cards.maumau.model;
|
||||
|
||||
import cards.Card;
|
||||
import cards.Rank;
|
||||
import cards.Suit;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static cards.Rank.ACE;
|
||||
import static cards.Rank.EIGHT;
|
||||
import static cards.Rank.JACK;
|
||||
import static cards.Rank.KING;
|
||||
import static cards.Rank.NINE;
|
||||
import static cards.Rank.QUEEN;
|
||||
import static cards.Rank.SEVEN;
|
||||
import static cards.Rank.TEN;
|
||||
import static cards.Suit.CLUBS;
|
||||
import static cards.Suit.DIAMONDS;
|
||||
import static cards.Suit.HEARTS;
|
||||
import static cards.Suit.SPADES;
|
||||
import static cards.maumau.model.GameState.CHOOSE_SUIT;
|
||||
import static cards.maumau.model.GameState.GAME_INITIALIZED;
|
||||
import static cards.maumau.model.GameState.GAME_OVER;
|
||||
import static cards.maumau.model.GameState.PLAY;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
public class MauMau9Test {
|
||||
private static Card c(Rank r, Suit s) {
|
||||
return new Card(r, s);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void game() {
|
||||
final List<Card> deck = List.of(c(ACE, HEARTS), c(SEVEN, CLUBS), c(EIGHT, DIAMONDS), c(TEN, CLUBS), c(QUEEN, HEARTS), c(TEN, SPADES), c(SEVEN, DIAMONDS), c(SEVEN, HEARTS), c(KING, DIAMONDS), c(JACK, CLUBS), c(NINE, DIAMONDS), c(TEN, HEARTS), c(SEVEN, SPADES), c(KING, CLUBS), c(KING, HEARTS), c(QUEEN, DIAMONDS), c(NINE, CLUBS), c(ACE, SPADES), c(EIGHT, HEARTS), c(TEN, DIAMONDS), c(JACK, DIAMONDS), c(ACE, CLUBS), c(QUEEN, CLUBS), c(JACK, HEARTS), c(NINE, SPADES), c(EIGHT, SPADES), c(QUEEN, SPADES), c(JACK, SPADES), c(ACE, DIAMONDS), c(NINE, HEARTS), c(KING, SPADES), c(EIGHT, CLUBS));
|
||||
final MauMau game = new MauMau(4, deck);
|
||||
final Player jacqueline = game.addPlayer("Jacqueline");
|
||||
final Player chantal = game.addPlayer("Chantal");
|
||||
final Player cheyenne = game.addPlayer("Cheyenne");
|
||||
|
||||
assertEquals(GAME_INITIALIZED, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, 7♣︎, 8♦︎, 10♣︎, Q♥︎, 10♠︎, 7♦︎, 7♥︎, K♦︎, J♣︎, 9♦︎, 10♥︎, 7♠︎, K♣︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
game.startGame();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♥︎, 10♣︎, 7♦︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, Q♥︎, 7♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, 10♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[K♣︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(SEVEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, Q♥︎, 7♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, 10♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, 10♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♣︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, 10♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, 10♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[K♣︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(2, game.get7Counter());
|
||||
|
||||
cheyenne.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, 10♥︎, K♣︎, K♥︎, Q♦︎, 9♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, 10♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(TEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♥︎, 10♣︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[7♣︎, Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♣︎, K♥︎, Q♦︎, 9♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(TEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[7♣︎, Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♣︎, K♥︎, Q♦︎, 9♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(SEVEN, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♣︎, K♥︎, Q♦︎, 9♣︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[A♠︎, 8♥︎, 10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(1, game.get7Counter());
|
||||
|
||||
cheyenne.no7();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♣︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(KING, CLUBS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♥︎, J♣︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, CLUBS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(HEARTS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[Q♥︎, 9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(QUEEN, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎, 8♥︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(EIGHT, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎, J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[8♦︎, 10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[9♦︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(EIGHT, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[9♦︎, 10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(NINE, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♠︎, K♦︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(KING, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, chantal, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♠︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[J♦︎, A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.skip();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(chantal, cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♦︎]", chantal.getCards().toString());
|
||||
assertEquals("[10♠︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.chooseCard(c(TEN, DIAMONDS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline, chantal), game.getPlayers());
|
||||
assertEquals(List.of(), game.getRanking());
|
||||
assertEquals("[10♠︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[]", chantal.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
chantal.maumau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[10♠︎, K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎, J♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(TEN, SPADES));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[A♥︎, J♦︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(JACK, DIAMONDS));
|
||||
assertEquals(CHOOSE_SUIT, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseSuit(HEARTS);
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.mau();
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[K♥︎, Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertEquals(HEARTS, game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
cheyenne.chooseCard(c(KING, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(jacqueline, cheyenne), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[A♥︎]", jacqueline.getCards().toString());
|
||||
assertEquals("[Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[K♥︎, J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.chooseCard(c(ACE, HEARTS));
|
||||
assertEquals(PLAY, game.getGameState());
|
||||
assertEquals(List.of(cheyenne, jacqueline), game.getPlayers());
|
||||
assertEquals(List.of(chantal), game.getRanking());
|
||||
assertEquals("[Q♦︎, 9♣︎, A♠︎]", cheyenne.getCards().toString());
|
||||
assertEquals("[]", jacqueline.getCards().toString());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, K♥︎, J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
|
||||
jacqueline.maumau();
|
||||
assertEquals(GAME_OVER, game.getGameState());
|
||||
assertEquals(List.of(), game.getPlayers());
|
||||
assertEquals(List.of(chantal, jacqueline, cheyenne), game.getRanking());
|
||||
assertEquals("[A♣︎, Q♣︎, J♥︎, 9♠︎, 8♠︎, Q♠︎, J♠︎, A♦︎, 9♥︎, K♠︎, 8♣︎]", game.getDrawPile().toString());
|
||||
assertEquals("[A♥︎, K♥︎, J♦︎, 10♠︎, 10♦︎, K♦︎, 9♦︎, 8♦︎, 8♥︎, Q♥︎, J♣︎, K♣︎, 7♣︎, 10♣︎, 10♥︎, 7♥︎, 7♦︎, 7♠︎]", game.getDiscardPile().toString());
|
||||
assertNull(game.getChosenSuit());
|
||||
assertEquals(0, game.get7Counter());
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user