Fix: GameTest Partial

This commit is contained in:
rubenpirreram
2026-04-11 17:23:41 +02:00
parent aeb3117d4a
commit 0462f0f39e
2 changed files with 79 additions and 3 deletions
@@ -1,8 +1,14 @@
package it.polimi.ingsw.gc14.Model;
import it.polimi.ingsw.gc14.Model.Cards.TribeCard;
import it.polimi.ingsw.gc14.Model.GamePackage.GameStages;
import org.junit.jupiter.api.Test;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import static org.junit.jupiter.api.Assertions.*;
class GameTest {
@@ -28,6 +34,7 @@ class GameTest {
@Test
void getNPlayers() {
}
@Test
@@ -60,7 +67,55 @@ class GameTest {
}
@Test
void drawUpperTribeCardByIndex() {
void drawingTribeCardByIndex() {
Game game=new Game(3);
Player p1=new Player("p1");
Player p2=new Player("p2");
Player p3=new Player("p3");
Player p4=new Player("p3");
assertTrue(game.addPlayer(p1));
assertTrue(game.addPlayer(p2));
assertFalse(game.addPlayer(p2));
assertTrue(game.addPlayer(p3));
Queue<Player>players=new LinkedList<>();
for(int i=0;i<3;i++) {
players.add( game.getCurrentState().getCurrentPlayer());
assertTrue(game.SlotChoiceByIndex(game.getCurrentState().getCurrentPlayer(), i));
}
Player temp_player;
temp_player=players.poll();
assertEquals(temp_player,game.getCurrentState().getCurrentPlayer());
int index;
List<TribeCard> cards=game.getLowerListTribeCards();
index=cards.indexOf(cards.stream().filter(x->!x.IsEventCard()).findFirst().get());
assertTrue(game.DrawLowerTribeCardByIndex(temp_player,index));
temp_player=players.poll();
assertEquals(temp_player,game.getCurrentState().getCurrentPlayer());
while(game.getCurrentState().getNUpper()>1) {
cards=game.getUpperListTribeCards();
index=cards.indexOf(cards.stream().filter(x->!x.IsEventCard()).findFirst().get());
assertTrue(game.DrawUpperTribeCardByIndex(temp_player,index));
}
cards=game.getUpperListTribeCards();
index=cards.indexOf(cards.stream().filter(TribeCard::IsEventCard).findFirst().get());
assertFalse(game.DrawUpperTribeCardByIndex(temp_player,index));
index=cards.indexOf(cards.stream().filter(x->!x.IsEventCard()).findFirst().get());
assertTrue(game.DrawUpperTribeCardByIndex(temp_player,index));
index=cards.indexOf(cards.stream().filter(x->!x.IsEventCard()).findFirst().get());
assertFalse(game.DrawUpperTribeCardByIndex(temp_player,index));
}
@Test