mirror of
https://github.com/magefree/mage.git
synced 2025-12-26 21:42:07 -08:00
Tests: fixed CastSplitCardsFromOtherZonesTest;
This commit is contained in:
parent
5cf1e5a7a0
commit
fbdfeba9d8
1 changed files with 45 additions and 33 deletions
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package org.mage.test.cards.cost.splitcards;
|
||||
|
||||
import mage.constants.PhaseStep;
|
||||
|
|
@ -7,7 +6,6 @@ import org.junit.Test;
|
|||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author LevelX2
|
||||
*/
|
||||
public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
||||
|
|
@ -27,31 +25,6 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Sanguine Bond", 1); // Enchantment to destroy
|
||||
// Wear
|
||||
// Destroy target artifact.
|
||||
// Tear
|
||||
// Destroy target enchantment.
|
||||
addCard(Zone.HAND, playerB, "Wear // Tear"); // Instant {1}{R} // {W}
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Mindclaw Shaman");
|
||||
addTarget(playerA, "Sanguine Bond");
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
||||
assertPermanentCount(playerA, "Mindclaw Shaman", 1);
|
||||
assertGraveyardCount(playerB, "Wear // Tear", 1);
|
||||
assertGraveyardCount(playerB, "Sanguine Bond", 1);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCastFearFromOpponentsHand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals their hand.
|
||||
// You may cast an instant or sorcery card from it without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Icy Manipulator", 1); // Artifact to destroy
|
||||
// Wear
|
||||
// Destroy target artifact.
|
||||
|
|
@ -60,7 +33,42 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerB, "Wear // Tear"); // Instant {1}{R} // {W}
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Mindclaw Shaman");
|
||||
addTarget(playerA, "Icy Manipulator");
|
||||
addTarget(playerA, playerB);
|
||||
setChoice(playerA, "Wear // Tear"); // select card
|
||||
setChoice(playerA, "Yes"); // confirm to cast
|
||||
setChoice(playerA, "Tear"); // select tear side
|
||||
addTarget(playerA, "Sanguine Bond"); // target for tear
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
||||
assertPermanentCount(playerA, "Mindclaw Shaman", 1);
|
||||
assertGraveyardCount(playerB, "Wear // Tear", 1);
|
||||
assertGraveyardCount(playerB, "Icy Manipulator", 0);
|
||||
assertGraveyardCount(playerB, "Sanguine Bond", 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCastWearFromOpponentsHand() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
|
||||
// When Mindclaw Shaman enters the battlefield, target opponent reveals their hand.
|
||||
// You may cast an instant or sorcery card from it without paying its mana cost.
|
||||
addCard(Zone.HAND, playerA, "Mindclaw Shaman"); // Creature {4}{R}
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Sanguine Bond", 1); // Enchantment to destroy
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Icy Manipulator", 1); // Artifact to destroy
|
||||
// Wear
|
||||
// Destroy target artifact.
|
||||
// Tear
|
||||
// Destroy target enchantment.
|
||||
addCard(Zone.HAND, playerB, "Wear // Tear"); // Instant {1}{R} // {W}
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Mindclaw Shaman");
|
||||
addTarget(playerA, playerB);
|
||||
setChoice(playerA, "Wear // Tear"); // select card
|
||||
setChoice(playerA, "Yes"); // confirm to cast
|
||||
setChoice(playerA, "Wear"); // select wear side
|
||||
addTarget(playerA, "Icy Manipulator"); // target for wear
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
|
@ -68,7 +76,7 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
assertPermanentCount(playerA, "Mindclaw Shaman", 1);
|
||||
assertGraveyardCount(playerB, "Wear // Tear", 1);
|
||||
assertGraveyardCount(playerB, "Icy Manipulator", 1);
|
||||
|
||||
assertGraveyardCount(playerB, "Sanguine Bond", 0);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -87,16 +95,20 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
addCard(Zone.HAND, playerB, "Wear // Tear"); // Instant {1}{R} // {W}
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Mindclaw Shaman");
|
||||
addTarget(playerA, "Sanguine Bond");
|
||||
addTarget(playerA, playerB);
|
||||
setChoice(playerA, "Wear // Tear"); // select card
|
||||
setChoice(playerA, "Yes"); // confirm to cast
|
||||
setChoice(playerA, "Wear // Tear"); // select fused
|
||||
addTarget(playerA, "Icy Manipulator"); // target for wear
|
||||
addTarget(playerA, "Sanguine Bond"); // target for tear
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
||||
assertPermanentCount(playerA, "Mindclaw Shaman", 1);
|
||||
assertGraveyardCount(playerB, "Wear // Tear", 1);
|
||||
assertGraveyardCount(playerB, "Sanguine Bond", 1);
|
||||
assertGraveyardCount(playerB, "Icy Manipulator", 1);
|
||||
|
||||
assertGraveyardCount(playerB, "Sanguine Bond", 1);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -119,7 +131,7 @@ public class CastSplitCardsFromOtherZonesTest extends CardTestPlayerBase {
|
|||
|
||||
attack(2, playerB, "Etali, Primal Storm");
|
||||
setChoice(playerB, "Yes");
|
||||
setChoice(playerB, "Cast Fire");
|
||||
setChoice(playerB, "Fire");
|
||||
addTarget(playerB, "Silvercoat Lion");
|
||||
|
||||
setStopAt(2, PhaseStep.END_COMBAT);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue