Merge branch 'card-dev' into card-dev
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.errata.set1;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
@@ -49,6 +50,39 @@ public class Elrond_LoRErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void ElrondStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Elrond
|
||||
* Subtitle: Lord of Rivendell
|
||||
* Side: Free Peoples
|
||||
* Culture: Elven
|
||||
* Twilight Cost: 4
|
||||
* Type: Ally
|
||||
* Subtype: Elf
|
||||
* Home: 3
|
||||
* Strength: 8
|
||||
* Vitality: 4
|
||||
* Errata Game Text: To play, spot Gandalf or an Elf.
|
||||
* At the start of each of your turns, heal up to 3 allies whose home is site 3.
|
||||
* Fellowship: Exert Elrond twice (or once if you can spot 2 other [elven] allies) to draw a card.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleDeckScenario();
|
||||
|
||||
PhysicalCardImpl elrond = scn.GetFreepsCard("elrond");
|
||||
|
||||
assertTrue(elrond.getBlueprint().isUnique());
|
||||
assertEquals(4, elrond.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(8, elrond.getBlueprint().getStrength());
|
||||
assertEquals(4, elrond.getBlueprint().getVitality());
|
||||
assertEquals(3, Arrays.stream(elrond.getBlueprint().getAllyHomeSiteNumbers()).findFirst().getAsInt());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void FellowshipActionExertsTwiceToDrawACardIfNoAllies() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
|
||||
@@ -5,9 +5,12 @@ import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
|
||||
public class Galadriel_LoLErrataTests
|
||||
@@ -35,6 +38,38 @@ public class Galadriel_LoLErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void GaladrielStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Galadriel
|
||||
* Subtitle: Lady of Light
|
||||
* Side: Free Peoples
|
||||
* Culture: Elven
|
||||
* Twilight Cost: 3
|
||||
* Type: Ally
|
||||
* Subtype: Elf
|
||||
* Home: 6
|
||||
* Strength: 3
|
||||
* Vitality: 3
|
||||
* Errata Game Text: At the start of each of your turns, heal up to 3 allies whose home is site 6.
|
||||
* Fellowship: Exert Galadriel to play an Elf; that Elf's twilight cost is -1.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimplePlayScenario();
|
||||
|
||||
PhysicalCardImpl galadriel = scn.GetFreepsCard("galadriel");
|
||||
|
||||
assertTrue(galadriel.getBlueprint().isUnique());
|
||||
assertEquals(3, galadriel.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(3, galadriel.getBlueprint().getStrength());
|
||||
assertEquals(3, galadriel.getBlueprint().getVitality());
|
||||
assertEquals(6, Arrays.stream(galadriel.getBlueprint().getAllyHomeSiteNumbers()).findFirst().getAsInt());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void FellowshipActionExertsToDiscountAnElf() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
|
||||
@@ -8,6 +8,7 @@ import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
@@ -31,14 +32,27 @@ public class NoStrangerErrataTests
|
||||
|
||||
|
||||
@Test
|
||||
public void NoStrangerIsUniqueAndHasStealth() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
public void NoStrangerStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *No Stranger to the Shadows
|
||||
* Side: Free Peoples
|
||||
* Culture: Gondor
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition
|
||||
* Errata Game Text: At the start of each of your turns, heal up to 3 allies whose home is site 6.
|
||||
* Fellowship: Exert Galadriel to play an Elf; that Elf's twilight cost is -1.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl nostranger = scn.GetFreepsCard("nostranger");
|
||||
|
||||
assertTrue(scn.HasKeyword(nostranger, Keyword.STEALTH));
|
||||
assertTrue(nostranger.getBlueprint().isUnique());
|
||||
assertEquals(0, nostranger.getBlueprint().getTwilightCost());
|
||||
assertTrue(scn.HasKeyword(nostranger, Keyword.STEALTH));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -2,9 +2,12 @@ package com.gempukku.lotro.cards.unofficial.pc.errata.set1;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Signet;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
import static org.junit.Assert.*;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -12,7 +15,7 @@ import java.util.HashMap;
|
||||
|
||||
public class Sam_SoHErrataTests
|
||||
{
|
||||
protected GenericCardTestHelper GetSimpleScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
protected GenericCardTestHelper GetScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<String, String>()
|
||||
{{
|
||||
@@ -23,10 +26,43 @@ public class Sam_SoHErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void SamStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Sam
|
||||
* Subtitle: Son of Hamfast
|
||||
* Side: Free Peoples
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 2
|
||||
* Type: Companion
|
||||
* Subtype: Hobbit
|
||||
* Strength: 3
|
||||
* Vitality: 4
|
||||
* Signet: Aragorn
|
||||
* Errata Game Text: Fellowship: Exert Sam and another companion to remove a burden.
|
||||
* Response: If Frodo dies, make Sam the Ring-bearer (resistance 5).
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
|
||||
assertTrue(sam.getBlueprint().isUnique());
|
||||
assertEquals(2, sam.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(3, sam.getBlueprint().getStrength());
|
||||
assertEquals(4, sam.getBlueprint().getVitality());
|
||||
assertEquals(Signet.ARAGORN, sam.getBlueprint().getSignet());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void FellowshipActionExertsTwiceToRemoveABurden() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl frodo = scn.GetRingBearer();
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
@@ -52,7 +88,7 @@ public class Sam_SoHErrataTests
|
||||
@Test
|
||||
public void RBDeathMakesSamTheRB() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl frodo = scn.GetRingBearer();
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
|
||||
@@ -36,6 +36,32 @@ public class StingErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void StingStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Sting
|
||||
* Side: Free Peoples
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Strength: +2
|
||||
* Type: Possession
|
||||
* Subtype: Hand Weapon
|
||||
* Errata Game Text: Bearer must be Frodo.
|
||||
* Fellowship or Regroup: Exert Frodo to reveal 4 cards at random from an opponent's hand. Remove (1) for each Orc revealed (limit (2)).
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl sting = scn.GetFreepsCard("sting");
|
||||
|
||||
assertTrue(sting.getBlueprint().isUnique());
|
||||
assertEquals(1, sting.getBlueprint().getTwilightCost());
|
||||
assertEquals(2, sting.getBlueprint().getStrength());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void StingCanOnlyBeBorneByFrodo() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
@@ -32,12 +32,27 @@ public class TalentForNBSErrataTests
|
||||
}
|
||||
|
||||
@Test
|
||||
public void TalentHasStealth() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
public void TalentStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *A Talent for Not Being Seen
|
||||
* Side: Free Peoples
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition
|
||||
* Errata Game Text: Stealth. Bearer must be Merry or Pippin. Limit 1 per character.
|
||||
* Each site's Shadow number is -1.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl talent = scn.GetFreepsCard("talent");
|
||||
|
||||
assertTrue(talent.getBlueprint().isUnique());
|
||||
assertEquals(0, talent.getBlueprint().getTwilightCost());
|
||||
|
||||
assertTrue(scn.HasKeyword(talent, Keyword.STEALTH));
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ import static org.junit.Assert.*;
|
||||
|
||||
public class FlamingBrandErrataTests
|
||||
{
|
||||
protected GenericCardTestHelper GetSimpleScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
protected GenericCardTestHelper GetScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<String, String>()
|
||||
{{
|
||||
@@ -31,10 +31,35 @@ public class FlamingBrandErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void BrandStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: Flaming Brand
|
||||
* Side: Free Peoples
|
||||
* Culture: Gondor
|
||||
* Twilight Cost: 1
|
||||
* Type: Possession
|
||||
* Subtype: Hand Weapon
|
||||
* Errata Game Text: Bearer must be a ranger. This weapon may be borne in addition to 1 other hand weapon.
|
||||
* Skirmish: If bearer is skirmishing a Nazgul, discard this possession to make bearer strength +3 and damage +1.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl brand = scn.GetFreepsCard("brand");
|
||||
|
||||
assertFalse(brand.getBlueprint().isUnique());
|
||||
assertEquals(1, brand.getBlueprint().getTwilightCost());
|
||||
assertEquals(1, brand.getBlueprint().getStrength());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void CanBeBorneByRangers() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl arwen = scn.GetFreepsCard("arwen");
|
||||
PhysicalCardImpl boromir = scn.GetFreepsCard("boromir");
|
||||
@@ -63,7 +88,7 @@ public class FlamingBrandErrataTests
|
||||
@Test
|
||||
public void CanBeBorneTwice() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl aragorn = scn.GetFreepsCard("aragorn");
|
||||
PhysicalCardImpl brand = scn.GetFreepsCard("brand");
|
||||
@@ -85,7 +110,7 @@ public class FlamingBrandErrataTests
|
||||
@Test
|
||||
public void SkirmishAbilityAvailableWhenSkirmishingNazgul() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl aragorn = scn.GetFreepsCard("aragorn");
|
||||
PhysicalCardImpl brand = scn.GetFreepsCard("brand");
|
||||
@@ -106,7 +131,7 @@ public class FlamingBrandErrataTests
|
||||
|
||||
scn.SkipToPhase(Phase.ASSIGNMENT);
|
||||
scn.SkipCurrentPhaseActions();
|
||||
scn.FreepsAssignToMinion(aragorn, runner);
|
||||
scn.FreepsAssignToMinions(aragorn, runner);
|
||||
//skip assigning the nazgul
|
||||
scn.SkipCurrentPhaseActions();
|
||||
|
||||
@@ -119,7 +144,7 @@ public class FlamingBrandErrataTests
|
||||
|
||||
//assignment for fierce skirmish
|
||||
scn.SkipCurrentPhaseActions();
|
||||
scn.FreepsAssignToMinion(aragorn, nazgul);
|
||||
scn.FreepsAssignToMinions(aragorn, nazgul);
|
||||
scn.FreepsResolveSkirmish(aragorn);
|
||||
|
||||
assertEquals(1, scn.FreepsGetAvailableActions().size());
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.gempukku.lotro.cards.unofficial.pc.errata.set2;
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Signet;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
@@ -28,12 +29,35 @@ public class Gimli_DotMrErrataTests
|
||||
}
|
||||
|
||||
@Test
|
||||
public void GimliHasDamage() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
public void GimliStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Gimli
|
||||
* Subtitle: Dwarf of the Mountain-race
|
||||
* Side: Free Peoples
|
||||
* Culture: Dwarven
|
||||
* Twilight Cost: 2
|
||||
* Type: Companion
|
||||
* Subtype: Dwarf
|
||||
* Strength: 6
|
||||
* Vitality: 3
|
||||
* Signet: Frodo
|
||||
* Errata Game Text: Damage +1. Each underground site's Shadow number is -1. While the fellowship is at an underground site, Gimli is strength +1.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl gimli = scn.GetFreepsCard("gimli");
|
||||
|
||||
assertTrue(gimli.getBlueprint().isUnique());
|
||||
assertEquals(2, gimli.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(6, gimli.getBlueprint().getStrength());
|
||||
assertEquals(3, gimli.getBlueprint().getVitality());
|
||||
assertEquals(Signet.FRODO, gimli.getBlueprint().getSignet());
|
||||
|
||||
assertTrue(scn.HasKeyword(gimli, Keyword.DAMAGE));
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.gempukku.lotro.cards.unofficial.pc.errata.set3;
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Signet;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
@@ -36,6 +37,39 @@ public class Aragorn_HttWCErrataTests
|
||||
|
||||
PhysicalCardImpl aragorn = scn.GetFreepsCard("aragorn");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void AragornStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Aragorn
|
||||
* Subtitle: Heir to the White City
|
||||
* Side: Free Peoples
|
||||
* Culture: Gondor
|
||||
* Twilight Cost: 4
|
||||
* Type: Companion
|
||||
* Subtype: Man
|
||||
* Strength: 8
|
||||
* Vitality: 4
|
||||
* Signet: Frodo
|
||||
* Errata Game Text: Ranger. Each time the fellowship moves during the fellowship phase, remove (1).
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl aragorn = scn.GetFreepsCard("aragorn");
|
||||
|
||||
assertTrue(aragorn.getBlueprint().isUnique());
|
||||
assertEquals(4, aragorn.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(8, aragorn.getBlueprint().getStrength());
|
||||
assertEquals(4, aragorn.getBlueprint().getVitality());
|
||||
assertEquals(Signet.FRODO, aragorn.getBlueprint().getSignet());
|
||||
|
||||
assertTrue(scn.HasKeyword(aragorn, Keyword.RANGER));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.errata.set3;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Zone;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
@@ -21,7 +19,7 @@ import static org.junit.Assert.assertTrue;
|
||||
|
||||
public class BillThePonyErrataTests
|
||||
{
|
||||
protected GenericCardTestHelper GetSimpleScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
protected GenericCardTestHelper GetScenario() throws CardNotFoundException, DecisionResultInvalidException {
|
||||
return new GenericCardTestHelper(
|
||||
new HashMap<String, String>()
|
||||
{{
|
||||
@@ -31,10 +29,36 @@ public class BillThePonyErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void BillStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Bill the Pony
|
||||
* Side: Free Peoples
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 0
|
||||
* Type: Possession
|
||||
* Subtype: Pony
|
||||
* Errata Game Text: Stealth. Bearer must be Sam.
|
||||
* Each site's Shadow number is -1. Discard this possession when at an underground site.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl bill = scn.GetFreepsCard("bill");
|
||||
|
||||
assertTrue(bill.getBlueprint().isUnique());
|
||||
assertEquals(0, bill.getBlueprint().getTwilightCost());
|
||||
|
||||
assertTrue(scn.HasKeyword(bill, Keyword.STEALTH));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void BillCanBeBorneBySam() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl bill = scn.GetFreepsCard("bill");
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
@@ -56,7 +80,7 @@ public class BillThePonyErrataTests
|
||||
@Test
|
||||
public void BillReducesTwilight() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl bill = scn.GetFreepsCard("bill");
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
@@ -76,7 +100,7 @@ public class BillThePonyErrataTests
|
||||
@Test
|
||||
public void BillDiscardedWhenMovingToUnderground() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetSimpleScenario();
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl bill = scn.GetFreepsCard("bill");
|
||||
PhysicalCardImpl sam = scn.GetFreepsCard("sam");
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.gempukku.lotro.cards.unofficial.pc.errata.set3;
|
||||
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Zone;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
@@ -43,10 +43,34 @@ public class HornOfBoromirErrataTests
|
||||
put("aragorn", "1_89");
|
||||
|
||||
put("runner1", "1_178");
|
||||
put("runner2", "1_178");
|
||||
}}
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void HornStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Horn of Boromir
|
||||
* Side: Free Peoples
|
||||
* Culture: Gondor
|
||||
* Twilight Cost: 1
|
||||
* Type: Possession
|
||||
* Errata Game Text: Bearer must be Boromir.
|
||||
* Maneuver: Exert Boromir and discard this possession to spot an ally. Until the regroup phase, that ally is strength +3 and participates in archery fire and skirmishes.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetFOTRScenario();
|
||||
|
||||
PhysicalCardImpl horn = scn.GetFreepsCard("horn");
|
||||
|
||||
assertTrue(horn.getBlueprint().isUnique());
|
||||
assertEquals(1, horn.getBlueprint().getTwilightCost());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void CanBeBorneByBoromir() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
@@ -106,8 +130,10 @@ public class HornOfBoromirErrataTests
|
||||
|
||||
scn.SkipCurrentPhaseActions();
|
||||
|
||||
scn.FreepsAssignToMinion(elrond, runner1);
|
||||
scn.FreepsAssignToMinions(elrond, runner1);
|
||||
assertTrue(scn.IsCharAssigned(elrond));
|
||||
assertEquals(11, scn.GetStrength(elrond));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.gempukku.lotro.cards.unofficial.pc.errata.set3;
|
||||
import com.gempukku.lotro.cards.GenericCardTestHelper;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Signet;
|
||||
import com.gempukku.lotro.game.CardNotFoundException;
|
||||
import com.gempukku.lotro.game.PhysicalCardImpl;
|
||||
import com.gempukku.lotro.logic.decisions.DecisionResultInvalidException;
|
||||
@@ -31,6 +32,40 @@ public class Saruman_KoIErrataTests
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void SarumanStatsAndKeywordsAreCorrect() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
|
||||
/**
|
||||
* Set: 1E
|
||||
* Title: *Saruman
|
||||
* Subtitle: Keeper of Isengard
|
||||
* Side: Shadow
|
||||
* Culture: Isengard
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion
|
||||
* Subtype: Wizard
|
||||
* Strength: 8
|
||||
* Vitality: 4
|
||||
* Home Site: 4
|
||||
* Errata Game Text: Saruman may not take wounds during the archery phase and may not be assigned to a skirmish.
|
||||
* Maneuver: Exert Saruman to make an Uruk-hai fierce until the regroup phase.
|
||||
* Response: If an Uruk-hai is about to take a wound, exert Saruman to prevent that wound.
|
||||
*/
|
||||
|
||||
//Pre-game setup
|
||||
GenericCardTestHelper scn = GetScenario();
|
||||
|
||||
PhysicalCardImpl saruman = scn.GetFreepsCard("saruman");
|
||||
|
||||
assertTrue(saruman.getBlueprint().isUnique());
|
||||
assertEquals(4, saruman.getBlueprint().getTwilightCost());
|
||||
|
||||
assertEquals(8, saruman.getBlueprint().getStrength());
|
||||
assertEquals(4, saruman.getBlueprint().getVitality());
|
||||
assertEquals(4, saruman.getBlueprint().getSiteNumber());
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void SarumanImmunityAndWoundBlock() throws DecisionResultInvalidException, CardNotFoundException {
|
||||
//Pre-game setup
|
||||
|
||||
Reference in New Issue
Block a user