mirror of
https://github.com/magefree/mage.git
synced 2025-12-28 22:42:03 -08:00
fixed some Idol of Endurance bugs, updated tests
This commit is contained in:
parent
833ca03293
commit
00c5162682
2 changed files with 85 additions and 10 deletions
|
|
@ -11,12 +11,15 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
public class IdolOfEnduranceTest extends CardTestPlayerBase {
|
||||
|
||||
private static final String idol = "Idol of Endurance";
|
||||
private static final String dsnchnt = "Disenchant";
|
||||
private static final String key = "Voltaic Key";
|
||||
private static final String sqr = "Squire";
|
||||
private static final String glrskr = "Glory Seeker";
|
||||
private static final String pnhrmcn = "Panharmonicon";
|
||||
private static final String bnyrdwrm = "Boneyard Wurm";
|
||||
|
||||
@Test
|
||||
public void testIdol() {
|
||||
public void testIdolCast() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 5);
|
||||
addCard(Zone.HAND, playerA, idol);
|
||||
addCard(Zone.GRAVEYARD, playerA, sqr);
|
||||
|
|
@ -35,7 +38,7 @@ public class IdolOfEnduranceTest extends CardTestPlayerBase {
|
|||
}
|
||||
|
||||
@Test
|
||||
public void testIdol2() {
|
||||
public void testIdolCast2() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 5);
|
||||
addCard(Zone.HAND, playerA, idol);
|
||||
addCard(Zone.GRAVEYARD, playerA, sqr);
|
||||
|
|
@ -59,6 +62,63 @@ public class IdolOfEnduranceTest extends CardTestPlayerBase {
|
|||
assertPermanentCount(playerA, glrskr, 0);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIdolLeaves() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 7);
|
||||
addCard(Zone.HAND, playerA, idol);
|
||||
addCard(Zone.HAND, playerA, dsnchnt);
|
||||
addCard(Zone.GRAVEYARD, playerA, sqr);
|
||||
addCard(Zone.GRAVEYARD, playerA, glrskr);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, idol);
|
||||
|
||||
waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{1}{W}");
|
||||
|
||||
waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA);
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, sqr);
|
||||
|
||||
waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA);
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, dsnchnt, idol);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
assertAllCommandsUsed();
|
||||
|
||||
assertPermanentCount(playerA, sqr, 1);
|
||||
assertPermanentCount(playerA, idol, 0);
|
||||
assertGraveyardCount(playerA, glrskr, 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIdolPanharmonicon() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 7);
|
||||
addCard(Zone.BATTLEFIELD, playerA, pnhrmcn);
|
||||
addCard(Zone.BATTLEFIELD, playerA, bnyrdwrm, 2);
|
||||
addCard(Zone.HAND, playerA, idol);
|
||||
addCard(Zone.HAND, playerA, dsnchnt);
|
||||
addCard(Zone.GRAVEYARD, playerA, sqr);
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, idol);
|
||||
|
||||
// Boneyard Wurm will die between triggers
|
||||
waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA);
|
||||
activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{1}{W}");
|
||||
|
||||
waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN, playerA);
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, bnyrdwrm);
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, dsnchnt, idol);
|
||||
|
||||
setStopAt(1, PhaseStep.END_TURN);
|
||||
execute();
|
||||
assertAllCommandsUsed();
|
||||
|
||||
assertPermanentCount(playerA, bnyrdwrm, 1);
|
||||
assertPermanentCount(playerA, idol, 0);
|
||||
assertGraveyardCount(playerA, sqr, 1);
|
||||
assertGraveyardCount(playerA, bnyrdwrm, 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIdolTwice() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 8);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue