Added unit tests for all V2 Dunland cards; cleaned up the tests for the V2 Maps.
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.common.Side;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -18,8 +20,12 @@ public class Card_V2_002_Tests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "102_2");
|
||||
// put other cards in here as needed for the test case
|
||||
put("raider", "102_2");
|
||||
|
||||
put("card1", "102_3");
|
||||
put("card2", "102_4");
|
||||
put("card3", "102_5");
|
||||
put("card4", "102_6");
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -47,7 +53,7 @@ public class Card_V2_002_Tests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("raider");
|
||||
|
||||
assertEquals("Dunlending Raider", card.getBlueprint().getTitle());
|
||||
assertNull(card.getBlueprint().getSubtitle());
|
||||
@@ -62,18 +68,45 @@ public class Card_V2_002_Tests
|
||||
assertEquals(3, card.getBlueprint().getSiteNumber());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void DunlendingRaiderTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void DunlendingRaiderCosts3IfFreepsHasInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
var raider = scn.GetShadowCard("raider");
|
||||
scn.ShadowMoveCardToHand(raider);
|
||||
|
||||
scn.FreepsMoveCardToHand("card1", "card2", "card3", "card4");
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
scn.SetTwilight(7);
|
||||
|
||||
assertEquals(3, scn.GetTwilight());
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
assertTrue(scn.ShadowPlayAvailable(raider));
|
||||
assertEquals(10, scn.GetTwilight());
|
||||
|
||||
scn.ShadowPlayCard(raider);
|
||||
//10 in the pool, -3 for full price -2 for roaming
|
||||
assertEquals(5, scn.GetTwilight());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void DunlendingRaiderCosts1IfShadowHasInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var raider = scn.GetShadowCard("raider");
|
||||
scn.ShadowMoveCardToHand(raider);
|
||||
|
||||
scn.StartGame();
|
||||
scn.SetTwilight(7);
|
||||
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
assertTrue(scn.ShadowPlayAvailable(raider));
|
||||
assertEquals(10, scn.GetTwilight());
|
||||
|
||||
scn.ShadowPlayCard(raider);
|
||||
//10 in the pool, -1 for full price -2 for roaming
|
||||
assertEquals(7, scn.GetTwilight());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -18,8 +17,12 @@ public class Card_V2_003_Tests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "102_3");
|
||||
// put other cards in here as needed for the test case
|
||||
put("reaver", "102_3");
|
||||
|
||||
put("card1", "102_4");
|
||||
put("card2", "102_5");
|
||||
put("card3", "102_6");
|
||||
put("card4", "102_7");
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -47,7 +50,7 @@ public class Card_V2_003_Tests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("reaver");
|
||||
|
||||
assertEquals("Dunlending Reaver", card.getBlueprint().getTitle());
|
||||
assertNull(card.getBlueprint().getSubtitle());
|
||||
@@ -62,18 +65,45 @@ public class Card_V2_003_Tests
|
||||
assertEquals(3, card.getBlueprint().getSiteNumber());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void DunlendingReaverTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void DunlendingReaverNoBonusIfFreepsHasInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
var reaver = scn.GetShadowCard("reaver");
|
||||
scn.ShadowMoveCardToHand(reaver);
|
||||
|
||||
scn.FreepsMoveCardToHand("card1", "card2", "card3", "card4");
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
scn.SetTwilight(10);
|
||||
|
||||
assertEquals(2, scn.GetTwilight());
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
assertTrue(scn.ShadowPlayAvailable(reaver));
|
||||
|
||||
scn.ShadowPlayCard(reaver);
|
||||
|
||||
assertEquals(8, scn.GetStrength(reaver));
|
||||
assertFalse(scn.hasKeyword(reaver, Keyword.DAMAGE));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void DunlendingReaverIsStrengthPlus3AndDamagePlus1IfShadowHasInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var reaver = scn.GetShadowCard("reaver");
|
||||
scn.ShadowMoveCardToHand(reaver);
|
||||
|
||||
scn.StartGame();
|
||||
scn.SetTwilight(10);
|
||||
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
assertTrue(scn.ShadowPlayAvailable(reaver));
|
||||
|
||||
scn.ShadowPlayCard(reaver);
|
||||
|
||||
assertEquals(11, scn.GetStrength(reaver));
|
||||
assertTrue(scn.hasKeyword(reaver, Keyword.DAMAGE));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -18,8 +17,16 @@ public class Card_V2_004_Tests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "102_4");
|
||||
// put other cards in here as needed for the test case
|
||||
put("horsemen", "102_4");
|
||||
put("band", "4_4");
|
||||
put("chief", "4_20");
|
||||
put("club", "4_36");
|
||||
put("hides", "4_19");
|
||||
|
||||
put("card1", "1_3");
|
||||
put("card2", "1_4");
|
||||
put("card3", "1_5");
|
||||
put("card4", "1_6");
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -44,7 +51,7 @@ public class Card_V2_004_Tests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("horsemen");
|
||||
|
||||
assertEquals("Horsemen Took Your Lands", card.getBlueprint().getTitle());
|
||||
assertNull(card.getBlueprint().getSubtitle());
|
||||
@@ -56,18 +63,75 @@ public class Card_V2_004_Tests
|
||||
assertEquals(1, card.getBlueprint().getTwilightCost());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void HorsemenTookYourLandsTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void HorsemenTookYourLandsPlaysNonUniqueDunlendingFromDiscardWithPossessionWithInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
var horsemen = scn.GetShadowCard("horsemen");
|
||||
var band = scn.GetShadowCard("band");
|
||||
var chief = scn.GetShadowCard("chief");
|
||||
var club = scn.GetShadowCard("club");
|
||||
var hides = scn.GetShadowCard("hides");
|
||||
scn.ShadowMoveCardToHand(horsemen);
|
||||
scn.ShadowMoveCardToDiscard(band, chief, club, hides);
|
||||
|
||||
var card1 = scn.GetFreepsCard("card1");
|
||||
var card2 = scn.GetFreepsCard("card2");
|
||||
var card3 = scn.GetFreepsCard("card3");
|
||||
var card4 = scn.GetFreepsCard("card4");
|
||||
scn.FreepsMoveCardToHand(card1, card2, card3);
|
||||
scn.FreepsMoveCardToDiscard(card4);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
scn.SetTwilight(10);
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
|
||||
assertEquals(1, scn.GetTwilight());
|
||||
assertEquals(Zone.DISCARD, band.getZone());
|
||||
assertEquals(Zone.DISCARD, chief.getZone());
|
||||
assertEquals(Zone.DISCARD, club.getZone());
|
||||
assertEquals(Zone.DISCARD, hides.getZone());
|
||||
assertTrue(scn.ShadowPlayAvailable(horsemen));
|
||||
scn.ShadowPlayCard(horsemen);
|
||||
assertEquals(Zone.SHADOW_CHARACTERS, band.getZone());
|
||||
assertEquals(Zone.DISCARD, chief.getZone());
|
||||
assertEquals(Zone.ATTACHED, club.getZone());
|
||||
assertEquals(band, club.getAttachedTo());
|
||||
assertEquals(Zone.DISCARD, hides.getZone());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void HorsemenTookYourLandsPlaysNonUniqueDunlendingFromDiscardWithNoPossessionWithNoInitiative() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var horsemen = scn.GetShadowCard("horsemen");
|
||||
var band = scn.GetShadowCard("band");
|
||||
var chief = scn.GetShadowCard("chief");
|
||||
var club = scn.GetShadowCard("club");
|
||||
var hides = scn.GetShadowCard("hides");
|
||||
scn.ShadowMoveCardToHand(horsemen);
|
||||
scn.ShadowMoveCardToDiscard(band, chief, club, hides);
|
||||
|
||||
var card1 = scn.GetFreepsCard("card1");
|
||||
var card2 = scn.GetFreepsCard("card2");
|
||||
var card3 = scn.GetFreepsCard("card3");
|
||||
var card4 = scn.GetFreepsCard("card4");
|
||||
scn.FreepsMoveCardToHand(card1, card2, card3, card4);
|
||||
|
||||
scn.StartGame();
|
||||
scn.SetTwilight(10);
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
|
||||
assertEquals(Zone.DISCARD, band.getZone());
|
||||
assertEquals(Zone.DISCARD, chief.getZone());
|
||||
assertEquals(Zone.DISCARD, club.getZone());
|
||||
assertEquals(Zone.DISCARD, hides.getZone());
|
||||
assertTrue(scn.ShadowPlayAvailable(horsemen));
|
||||
scn.ShadowPlayCard(horsemen);
|
||||
assertEquals(Zone.SHADOW_CHARACTERS, band.getZone());
|
||||
assertEquals(Zone.DISCARD, chief.getZone());
|
||||
assertEquals(Zone.DISCARD, club.getZone());
|
||||
assertEquals(Zone.DISCARD, hides.getZone());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -52,19 +51,4 @@ public class Card_V2_074_Tests
|
||||
assertFalse(card.getBlueprint().isUnique());
|
||||
assertEquals(CardType.MAP, card.getBlueprint().getCardType());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void PathoftheFellowshipTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(0, scn.GetTwilight());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -52,19 +51,4 @@ public class Card_V2_075_Tests
|
||||
assertFalse(card.getBlueprint().isUnique());
|
||||
assertEquals(CardType.MAP, card.getBlueprint().getCardType());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void RoadtotheTowersTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(0, scn.GetTwilight());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.vsets.set_v02;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -52,19 +51,4 @@ public class Card_V2_076_Tests
|
||||
assertFalse(card.getBlueprint().isUnique());
|
||||
assertEquals(CardType.MAP, card.getBlueprint().getCardType());
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void JourneyoftheKingTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(0, scn.GetTwilight());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user