Fixed / changed some tests.

This commit is contained in:
LevelX2 2015-07-03 14:59:19 +02:00
parent 0f5f8493c7
commit 9ef707c0fa
3 changed files with 41 additions and 47 deletions

View file

@ -29,6 +29,7 @@ package org.mage.test.AI.basic;
import mage.constants.PhaseStep;
import mage.constants.Zone;
import org.junit.Ignore;
import org.junit.Test;
import org.mage.test.serverside.base.CardTestPlayerBaseAI;
@ -36,7 +37,6 @@ import org.mage.test.serverside.base.CardTestPlayerBaseAI;
*
* @author LevelX2
*/
public class CostModificationTest extends CardTestPlayerBaseAI {
/**
@ -44,12 +44,13 @@ public class CostModificationTest extends CardTestPlayerBaseAI {
* Once played, I am stuck at "Waiting for Computer" forever...
*/
@Test
@Ignore // TODO: Check why sometimes Silvercoat Lion is not cast from AI
public void testFluctuator() {
addCard(Zone.HAND, playerA, "Silvercoat Lion");
// Destroy all artifacts, creatures, and enchantments.
// Cycling ({3}, Discard this card: Draw a card.)
addCard(Zone.HAND, playerA, "Akroma's Vengeance");
addCard(Zone.BATTLEFIELD, playerA, "Plains", 3);
// Cycling abilities you activate cost you up to {2} less to activate.
addCard(Zone.BATTLEFIELD, playerA, "Fluctuator");
@ -60,5 +61,5 @@ public class CostModificationTest extends CardTestPlayerBaseAI {
assertGraveyardCount(playerA, "Akroma's Vengeance", 1);
assertPermanentCount(playerA, "Silvercoat Lion", 1);
}
}

View file

@ -336,23 +336,26 @@ public class BestowTest extends CardTestPlayerBase {
// Nighthowler and enchanted creature each get +X/+X, where X is the number of creature cards in all graveyards.
addCard(Zone.HAND, playerB, "Nighthowler");
addCard(Zone.BATTLEFIELD, playerB, "Swamp", 4);
addCard(Zone.BATTLEFIELD, playerB, "Silvercoat Lion");
// First strike
// Whenever Alesha, Who Smiles at Death attacks, you may pay {W/B}{W/B}. If you do, return target creature card
// with power 2 or less from your graveyard to the battlefield tapped and attacking.
addCard(Zone.BATTLEFIELD, playerB, "Alesha, Who Smiles at Death"); // 3/2
addCard(Zone.GRAVEYARD, playerB, "Pillarfield Ox");
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerB, "Nighthowler using bestow", "Silvercoat Lion");
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerB, "Nighthowler using bestow", "Alesha, Who Smiles at Death");
attack(2, playerB, "Silvercoat Lion");
attack(2, playerB, "Alesha, Who Smiles at Death");
castSpell(2, PhaseStep.POSTCOMBAT_MAIN, playerA, "Chandra's Outrage", "Silvercoat Lion");
castSpell(2, PhaseStep.POSTCOMBAT_MAIN, playerA, "Chandra's Outrage", "Alesha, Who Smiles at Death");
setStopAt(2, PhaseStep.END_TURN);
execute();
assertLife(playerB, 18); // -2 from Chandra's Outrage
assertLife(playerA, 17); // -3 from attack Nighthowler
assertLife(playerA, 16); // -3 from attack Alesha with bestowed Nighthowler
assertGraveyardCount(playerA, "Chandra's Outrage", 1);
assertGraveyardCount(playerB, "Silvercoat Lion", 1);
assertGraveyardCount(playerB, "Alesha, Who Smiles at Death", 1);
assertPermanentCount(playerB, "Nighthowler", 1);
assertPowerToughness(playerB, "Nighthowler", 2, 2);
Permanent nighthowler = getPermanent("Nighthowler", playerB);

View file

@ -6,13 +6,12 @@ import org.junit.Test;
import org.mage.test.serverside.base.CardTestPlayerBase;
/**
* Tests that if a creature was controlled by opponent and died and was
* cast again by owner, that continuous effects of this creature work
* with controller for the owner
* Tests that if a creature was controlled by opponent and died and was cast
* again by owner, that continuous effects of this creature work with controller
* for the owner
*
* @author LevelX2
*/
public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
@Test
@ -21,26 +20,22 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
addCard(Zone.BATTLEFIELD, playerB, "Plains", 4);
addCard(Zone.BATTLEFIELD, playerB, "Swamp", 3);
/**
* Volrath's Stronghold
* Legendary Land
* {t}: Add {1} to your mana pool.
* {1}{B}, {tap}: Put target creature card from your graveyard on top of your library.
* Volrath's Stronghold Legendary Land {t}: Add {1} to your mana pool.
* {1}{B}, {tap}: Put target creature card from your graveyard on top of
* your library.
*/
addCard(Zone.BATTLEFIELD, playerB, "Volrath's Stronghold");
/**
* Elesh Norn, Grand Cenobite {5}{W}{W}
* Legendary Creature Praetor 4/7
* Vigilance
* Other creatures you control get +2/+2.
* Creatures your opponents control get -2/-2.
* Elesh Norn, Grand Cenobite {5}{W}{W} Legendary Creature Praetor 4/7
* Vigilance Other creatures you control get +2/+2. Creatures your
* opponents control get -2/-2.
*/
addCard(Zone.BATTLEFIELD, playerB, "Elesh Norn, Grand Cenobite");
addCard(Zone.BATTLEFIELD, playerB, "Kalonian Tusker"); // simple 3/3
/**
* Keiga, the Tide Star
* Legendary Dragon Spirit
* When Keiga, the Tide Star dies, gain control of target creature
* Keiga, the Tide Star Legendary Dragon Spirit When Keiga, the Tide
* Star dies, gain control of target creature
*/
addCard(Zone.BATTLEFIELD, playerA, "Keiga, the Tide Star");
addCard(Zone.BATTLEFIELD, playerA, "Kalonian Tusker");
@ -57,8 +52,8 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
assertPermanentCount(playerA, "Elesh Norn, Grand Cenobite", 1);
assertPowerToughness(playerA, "Kalonian Tusker", 5,5);
assertPowerToughness(playerB, "Kalonian Tusker", 1,1);
assertPowerToughness(playerA, "Kalonian Tusker", 5, 5);
assertPowerToughness(playerB, "Kalonian Tusker", 1, 1);
}
@Test
@ -66,24 +61,20 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
addCard(Zone.BATTLEFIELD, playerB, "Plains", 6);
addCard(Zone.BATTLEFIELD, playerB, "Swamp", 6);
/**
* Akroma's Vengeance {4}{W}{W}
* Sorcery
* Destroy all artifacts, creatures, and enchantments.
* Akroma's Vengeance {4}{W}{W} Sorcery Destroy all artifacts,
* creatures, and enchantments.
*/
addCard(Zone.HAND, playerB, "Akroma's Vengeance");
/**
* Volrath's Stronghold
* Legendary Land
* {t}: Add {1} to your mana pool.
* {1}{B}, {tap}: Put target creature card from your graveyard on top of your library.
* Volrath's Stronghold Legendary Land {t}: Add {1} to your mana pool.
* {1}{B}, {tap}: Put target creature card from your graveyard on top of
* your library.
*/
addCard(Zone.BATTLEFIELD, playerB, "Volrath's Stronghold");
/**
* Elesh Norn, Grand Cenobite {5}{W}{W}
* Legendary Creature Praetor
* Vigilance
* Other creatures you control get +2/+2.
* Creatures your opponents control get -2/-2.
* Elesh Norn, Grand Cenobite {5}{W}{W} Legendary Creature Praetor
* Vigilance Other creatures you control get +2/+2. Creatures your
* opponents control get -2/-2.
*/
addCard(Zone.HAND, playerB, "Elesh Norn, Grand Cenobite");
@ -91,13 +82,12 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
addCard(Zone.BATTLEFIELD, playerA, "Island", 6);
/**
* Keiga, the Tide Star {5}{U}
* Legendary Dragon Spirit 5/5
* When Keiga, the Tide Star dies, gain control of target creature
* Keiga, the Tide Star {5}{U} Legendary Dragon Spirit 5/5 When Keiga,
* the Tide Star dies, gain control of target creature
*/
addCard(Zone.HAND, playerA, "Keiga, the Tide Star");
addCard(Zone.BATTLEFIELD, playerA, "Darksteel Gargoyle");
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerB, "Elesh Norn, Grand Cenobite");
castSpell(3, PhaseStep.PRECOMBAT_MAIN, playerA, "Keiga, the Tide Star");
@ -108,9 +98,9 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
// Destroy all creatures, enchantments and artifacts
castSpell(4, PhaseStep.POSTCOMBAT_MAIN, playerB, "Akroma's Vengeance");
// Put Elesh Norn back on library
activateAbility(5, PhaseStep.END_TURN, playerB, "{1}{B},{T}: Put target creature card from your graveyard on top of it's owner's library.", "Elesh Norn, Grand Cenobite");
activateAbility(5, PhaseStep.END_TURN, playerB, "{1}{B},{T}: Put target creature card", "Elesh Norn, Grand Cenobite");
castSpell(6, PhaseStep.PRECOMBAT_MAIN, playerB, "Elesh Norn, Grand Cenobite");
setStopAt(6, PhaseStep.BEGIN_COMBAT);
@ -129,7 +119,7 @@ public class GainControlDiedCastAgainTest extends CardTestPlayerBase {
assertPermanentCount(playerA, "Darksteel Gargoyle", 1);
assertPermanentCount(playerB, "Darksteel Gargoyle", 1);
assertPowerToughness(playerA, "Darksteel Gargoyle", 1,1);
assertPowerToughness(playerB, "Darksteel Gargoyle", 5,5);
assertPowerToughness(playerA, "Darksteel Gargoyle", 1, 1);
assertPowerToughness(playerB, "Darksteel Gargoyle", 5, 5);
}
}