You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.3 KiB
44 lines
1.3 KiB
import org.junit.jupiter.api.Test;
|
|
|
|
import java.util.Random;
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
class PileTest {
|
|
|
|
@Test
|
|
void shuffleEmptyPile() {
|
|
Pile pile = new Pile();
|
|
pile.shuffle();
|
|
assertEquals(0, pile.size());
|
|
}
|
|
|
|
@Test
|
|
void shuffleOneCard() {
|
|
Pile pile = new Pile();
|
|
pile.add(new Card(1, Card.Suit.CLUBS));
|
|
pile.shuffle();
|
|
assertEquals(1, pile.size());
|
|
assertEquals(1, pile.size());
|
|
}
|
|
|
|
@Test
|
|
void shuffleCards() {
|
|
Pile pile = new Pile();
|
|
pile.add(new Card(1, Card.Suit.CLUBS));
|
|
pile.add(new Card(2, Card.Suit.DIAMONDS));
|
|
pile.add(new Card(3, Card.Suit.HEARTS));
|
|
pile.add(new Card(4, Card.Suit.SPADES));
|
|
Random random = new Random(1);
|
|
pile.shuffle(random);
|
|
assertEquals(4, pile.get(0).number);
|
|
assertEquals(Card.Suit.SPADES, pile.get(0).suit);
|
|
assertEquals(1, pile.get(1).number);
|
|
assertEquals(Card.Suit.CLUBS, pile.get(1).suit);
|
|
assertEquals(2, pile.get(2).number);
|
|
assertEquals(Card.Suit.DIAMONDS, pile.get(2).suit);
|
|
assertEquals(3, pile.get(3).number);
|
|
assertEquals(Card.Suit.HEARTS, pile.get(3).suit);
|
|
assertEquals(4, pile.size());
|
|
}
|
|
} |