Adding errata test cases for the three elf allies
This commit is contained in:
@@ -10,6 +10,7 @@ import java.util.HashMap;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.jupiter.api.Assertions.assertFalse;
|
||||
|
||||
public class Card_03_014_ErrataTests
|
||||
{
|
||||
@@ -18,8 +19,13 @@ public class Card_03_014_ErrataTests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "53_14");
|
||||
// put other cards in here as needed for the test case
|
||||
put("erestor", "53_14");
|
||||
put("arwen", "3_7");
|
||||
|
||||
put("enquea", "1_231");
|
||||
put("hate", "1_250");
|
||||
put("orc", "1_271");
|
||||
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -47,7 +53,7 @@ public class Card_03_014_ErrataTests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("erestor");
|
||||
|
||||
assertEquals("Erestor", card.getBlueprint().getTitle());
|
||||
assertEquals("Chief Advisor to Elrond", card.getBlueprint().getSubtitle());
|
||||
@@ -62,29 +68,147 @@ public class Card_03_014_ErrataTests
|
||||
assertTrue(card.getBlueprint().hasAllyHome(new AllyHome(SitesBlock.FELLOWSHIP, 3)));
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void ErestorTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void ErestorSpotsAnElfToPlay() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
scn.FreepsMoveCharToTable(card);
|
||||
scn.FreepsMoveCardToSupportArea(card);
|
||||
scn.FreepsMoveCardToDiscard(card);
|
||||
scn.FreepsMoveCardsToTopOfDeck(card);
|
||||
|
||||
// var card = scn.GetShadowCard("card");
|
||||
// scn.ShadowMoveCardToHand(card);
|
||||
// scn.ShadowMoveCharToTable(card);
|
||||
// scn.ShadowMoveCardToSupportArea(card);
|
||||
// scn.ShadowMoveCardToDiscard(card);
|
||||
// scn.ShadowMoveCardsToTopOfDeck(card);
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCardToHand(arwen, erestor);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(2, scn.GetTwilight());
|
||||
assertFalse(scn.FreepsPlayAvailable(erestor));
|
||||
scn.FreepsPlayCard(arwen);
|
||||
assertTrue(scn.FreepsPlayAvailable(erestor));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void ErestorCanBlockEnquea() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(erestor);
|
||||
|
||||
var enquea = scn.GetShadowCard("enquea");
|
||||
scn.ShadowMoveCharToTable(enquea);
|
||||
|
||||
scn.StartGame();
|
||||
scn.AddBurdens(5);
|
||||
|
||||
scn.SkipToPhase(Phase.MANEUVER);
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(enquea));
|
||||
scn.ShadowUseCardAction(enquea);
|
||||
|
||||
assertTrue(scn.FreepsHasOptionalTriggerAvailable());
|
||||
scn.FreepsAcceptOptionalTrigger();
|
||||
assertEquals(1, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(1, scn.GetWoundsOn(enquea));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void ErestorCanBlockEnqueaSkirmishWin() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(erestor);
|
||||
|
||||
var enquea = scn.GetShadowCard("enquea");
|
||||
scn.ShadowMoveCharToTable(enquea);
|
||||
|
||||
scn.StartGame();
|
||||
scn.AddBurdens(5);
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, enquea);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(enquea));
|
||||
scn.PassSkirmishActions();
|
||||
|
||||
assertTrue(scn.FreepsHasOptionalTriggerAvailable());
|
||||
scn.FreepsAcceptOptionalTrigger();
|
||||
assertEquals(1, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(enquea));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void ErestorCanBlockHate() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(erestor);
|
||||
|
||||
var hate = scn.GetShadowCard("hate");
|
||||
var orc = scn.GetShadowCard("orc");
|
||||
|
||||
scn.ShadowMoveCharToTable(orc);
|
||||
scn.ShadowMoveCardToHand(hate);
|
||||
|
||||
scn.StartGame();
|
||||
|
||||
scn.SkipToPhase(Phase.MANEUVER);
|
||||
scn.FreepsPassCurrentPhaseAction();
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(orc));
|
||||
scn.ShadowPlayCard(hate);
|
||||
|
||||
assertTrue(scn.FreepsHasOptionalTriggerAvailable());
|
||||
scn.FreepsAcceptOptionalTrigger();
|
||||
assertEquals(1, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(1, scn.GetWoundsOn(orc));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void ErestorCanBlockSauronOrcSkirmishWin() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(erestor);
|
||||
|
||||
var orc = scn.GetShadowCard("orc");
|
||||
scn.ShadowMoveCharToTable(orc);
|
||||
|
||||
scn.StartGame();
|
||||
scn.AddBurdens(5);
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, orc);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(orc));
|
||||
scn.PassSkirmishActions();
|
||||
|
||||
assertTrue(scn.FreepsHasOptionalTriggerAvailable());
|
||||
scn.FreepsAcceptOptionalTrigger();
|
||||
assertEquals(1, scn.GetWoundsOn(erestor));
|
||||
assertEquals(0, scn.GetWoundsOn(arwen));
|
||||
assertEquals(0, scn.GetWoundsOn(orc));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -8,8 +8,7 @@ import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class Card_03_020_ErrataTests
|
||||
{
|
||||
@@ -18,8 +17,15 @@ public class Card_03_020_ErrataTests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "53_20");
|
||||
// put other cards in here as needed for the test case
|
||||
put("golradir", "53_20");
|
||||
put("erestor", "53_14");
|
||||
put("saelbeth", "53_25");
|
||||
put("arwen", "3_7");
|
||||
|
||||
put("nazgul", "12_161");
|
||||
put("uruk", "1_151");
|
||||
put("orc", "1_178");
|
||||
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -47,7 +53,7 @@ public class Card_03_020_ErrataTests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("golradir");
|
||||
|
||||
assertEquals("Golradir", card.getBlueprint().getTitle());
|
||||
assertEquals("Councilor of Imladris", card.getBlueprint().getSubtitle());
|
||||
@@ -62,29 +68,81 @@ public class Card_03_020_ErrataTests
|
||||
assertTrue(card.getBlueprint().hasAllyHome(new AllyHome(SitesBlock.FELLOWSHIP, 3)));
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void GolradirTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void GolradirSpotsAnElfToPlay() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
scn.FreepsMoveCharToTable(card);
|
||||
scn.FreepsMoveCardToSupportArea(card);
|
||||
scn.FreepsMoveCardToDiscard(card);
|
||||
scn.FreepsMoveCardsToTopOfDeck(card);
|
||||
|
||||
// var card = scn.GetShadowCard("card");
|
||||
// scn.ShadowMoveCardToHand(card);
|
||||
// scn.ShadowMoveCharToTable(card);
|
||||
// scn.ShadowMoveCardToSupportArea(card);
|
||||
// scn.ShadowMoveCardToDiscard(card);
|
||||
// scn.ShadowMoveCardsToTopOfDeck(card);
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCardToHand(arwen, golradir);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(2, scn.GetTwilight());
|
||||
assertFalse(scn.FreepsPlayAvailable(golradir));
|
||||
scn.FreepsPlayCard(arwen);
|
||||
assertTrue(scn.FreepsPlayAvailable(golradir));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void GolradirExertsToMakeANonOrcStrengthMinus1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen, golradir);
|
||||
|
||||
var nazgul = scn.GetShadowCard("nazgul");
|
||||
scn.ShadowMoveCharToTable(nazgul);
|
||||
|
||||
scn.StartGame();
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, nazgul);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(golradir));
|
||||
assertEquals(10, scn.GetStrength(nazgul));
|
||||
assertTrue(scn.FreepsActionAvailable(golradir));
|
||||
|
||||
scn.FreepsUseCardAction(golradir);
|
||||
assertEquals(1, scn.GetWoundsOn(golradir));
|
||||
assertEquals(9, scn.GetStrength(nazgul));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void GolradirExertsToMakeAnOrcStrengthMinus1PerElf() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(golradir, erestor, saelbeth);
|
||||
|
||||
var orc = scn.GetShadowCard("orc");
|
||||
scn.ShadowMoveCharToTable(orc);
|
||||
|
||||
scn.StartGame();
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, orc);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(golradir));
|
||||
assertEquals(5, scn.GetStrength(orc));
|
||||
assertTrue(scn.FreepsActionAvailable(golradir));
|
||||
|
||||
scn.FreepsUseCardAction(golradir);
|
||||
assertEquals(1, scn.GetWoundsOn(golradir));
|
||||
// -4 for 4 elves
|
||||
assertEquals(1, scn.GetStrength(orc));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -8,8 +8,7 @@ import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class Card_03_025_ErrataTests
|
||||
{
|
||||
@@ -18,8 +17,15 @@ public class Card_03_025_ErrataTests
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<>()
|
||||
{{
|
||||
put("card", "53_25");
|
||||
// put other cards in here as needed for the test case
|
||||
put("golradir", "53_20");
|
||||
put("erestor", "53_14");
|
||||
put("saelbeth", "53_25");
|
||||
put("arwen", "3_7");
|
||||
|
||||
put("nazgul", "12_161");
|
||||
put("uruk", "1_151");
|
||||
put("orc", "1_178");
|
||||
|
||||
}},
|
||||
GenericCardTestHelper.FellowshipSites,
|
||||
GenericCardTestHelper.FOTRFrodo,
|
||||
@@ -48,7 +54,7 @@ public class Card_03_025_ErrataTests
|
||||
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
var card = scn.GetFreepsCard("saelbeth");
|
||||
|
||||
assertEquals("Saelbeth", card.getBlueprint().getTitle());
|
||||
assertEquals("Elven Councilor", card.getBlueprint().getSubtitle());
|
||||
@@ -63,29 +69,79 @@ public class Card_03_025_ErrataTests
|
||||
assertTrue(card.getBlueprint().hasAllyHome(new AllyHome(SitesBlock.FELLOWSHIP, 3)));
|
||||
}
|
||||
|
||||
// Uncomment any @Test markers below once this is ready to be used
|
||||
//@Test
|
||||
public void SaelbethTest1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
@Test
|
||||
public void SaelbethSpotsAnElfToPlay() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var card = scn.GetFreepsCard("card");
|
||||
scn.FreepsMoveCardToHand(card);
|
||||
scn.FreepsMoveCharToTable(card);
|
||||
scn.FreepsMoveCardToSupportArea(card);
|
||||
scn.FreepsMoveCardToDiscard(card);
|
||||
scn.FreepsMoveCardsToTopOfDeck(card);
|
||||
|
||||
// var card = scn.GetShadowCard("card");
|
||||
// scn.ShadowMoveCardToHand(card);
|
||||
// scn.ShadowMoveCharToTable(card);
|
||||
// scn.ShadowMoveCardToSupportArea(card);
|
||||
// scn.ShadowMoveCardToDiscard(card);
|
||||
// scn.ShadowMoveCardsToTopOfDeck(card);
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCardToHand(arwen, saelbeth);
|
||||
|
||||
scn.StartGame();
|
||||
scn.FreepsPlayCard(card);
|
||||
|
||||
assertEquals(2, scn.GetTwilight());
|
||||
assertFalse(scn.FreepsPlayAvailable(saelbeth));
|
||||
scn.FreepsPlayCard(arwen);
|
||||
assertTrue(scn.FreepsPlayAvailable(saelbeth));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void SaelbethExertsToMakeANonUrukStrengthMinus1() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen, saelbeth);
|
||||
|
||||
var nazgul = scn.GetShadowCard("nazgul");
|
||||
scn.ShadowMoveCharToTable(nazgul);
|
||||
|
||||
scn.StartGame();
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, nazgul);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(saelbeth));
|
||||
assertEquals(10, scn.GetStrength(nazgul));
|
||||
assertTrue(scn.FreepsActionAvailable(saelbeth));
|
||||
|
||||
scn.FreepsUseCardAction(saelbeth);
|
||||
assertEquals(1, scn.GetWoundsOn(saelbeth));
|
||||
assertEquals(9, scn.GetStrength(nazgul));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void SaelbethExertsToMakeAnOrcStrengthMinus1PerElf() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
var scn = GetScenario();
|
||||
|
||||
var golradir = scn.GetFreepsCard("golradir");
|
||||
var erestor = scn.GetFreepsCard("erestor");
|
||||
var saelbeth = scn.GetFreepsCard("saelbeth");
|
||||
var arwen = scn.GetFreepsCard("arwen");
|
||||
scn.FreepsMoveCharToTable(arwen);
|
||||
scn.FreepsMoveCardToSupportArea(golradir, erestor, saelbeth);
|
||||
|
||||
var uruk = scn.GetShadowCard("uruk");
|
||||
scn.ShadowMoveCharToTable(uruk);
|
||||
|
||||
scn.StartGame();
|
||||
|
||||
scn.SkipToAssignments();
|
||||
scn.FreepsAssignAndResolve(arwen, uruk);
|
||||
|
||||
assertEquals(0, scn.GetWoundsOn(saelbeth));
|
||||
assertEquals(5, scn.GetStrength(uruk));
|
||||
assertTrue(scn.FreepsActionAvailable(saelbeth));
|
||||
|
||||
scn.FreepsUseCardAction(saelbeth);
|
||||
assertEquals(1, scn.GetWoundsOn(saelbeth));
|
||||
// -4 for 4 elves
|
||||
assertEquals(1, scn.GetStrength(uruk));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user