Skip to content
Snippets Groups Projects
Commit dbf0a4f1 authored by giovanni.novati@studenti.unimi.it's avatar giovanni.novati@studenti.unimi.it
Browse files

REFACTORING: controllato nuovi casi in smartBriscolaStrategyTest

parent d71cb95c
No related branches found
No related tags found
No related merge requests found
......@@ -14,17 +14,14 @@ public class SmartBriscolaStrategy implements Strategy {
@Override
public @NotNull Card chooseCard(@NotNull Player me, @NotNull Player other, @NotNull Suit briscola) {
Card briscolaMia = null;
for (Card card : me) {
if (card.getSuit().equals(briscola))
briscolaMia=card;
}
if (briscolaMia==null) return next.chooseCard(me,other,briscola);
for (Card card : other) {
if (card.getRank().points()==0)
return next.chooseCard(me,other,briscola);
}
return briscolaMia;
for (Card card : me) {
if (card.getSuit().equals(briscola))
return card;
}
return next.chooseCard(me,other,briscola);
}
}
......@@ -8,7 +8,7 @@ import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.*;
public class StrategiaTest {
@Test
......@@ -36,7 +36,8 @@ public class StrategiaTest {
@Test
void smartBriscolaStrategyTest(){
Strategy SUT = new SmartBriscolaStrategy(mock(Strategy.class));
Strategy st = mock(Strategy.class);
Strategy SUT = new SmartBriscolaStrategy(st);
Player p1 = mock(Player.class);
Player p2 = mock(Player.class);
......@@ -45,5 +46,9 @@ public class StrategiaTest {
MockUtils.whenIterated(p1,Card.get(Rank.DUE, Suit.SPADE), Card.get(Rank.TRE, Suit.BASTONI));
MockUtils.whenIterated(p2,Card.get(Rank.FANTE, Suit.SPADE), Card.get(Rank.ASSO, Suit.BASTONI));
assertThat(SUT.chooseCard(p1, p2, b)).isEqualTo(Card.get(Rank.DUE, Suit.SPADE));
MockUtils.whenIterated(p2,Card.get(Rank.FANTE, Suit.SPADE), Card.get(Rank.CINQUE, Suit.BASTONI));
SUT.chooseCard(p1, p2, b);
verify(st,times(1)).chooseCard(p1,p2,b);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment