use of mage.abilities.mana.ManaOptions in project mage by magefree.
the class ManaOptionsTest method testCrystalQuarry.
// Crystal Quarry
// {T}: {1} Add .
// {5}, {T}: Add {W}{U}{B}{R}{G}.
@Test
public void testCrystalQuarry() {
addCard(Zone.BATTLEFIELD, playerA, "Plains", 2);
addCard(Zone.BATTLEFIELD, playerA, "Forest", 2);
addCard(Zone.BATTLEFIELD, playerA, "Crystal Quarry", 1);
setStopAt(1, PhaseStep.UPKEEP);
execute();
ManaOptions manaOptions = playerA.getAvailableManaTest(currentGame);
assertDuplicatedManaOptions(manaOptions);
Assert.assertEquals("mana variations don't fit", 1, manaOptions.size());
assertManaOptions("{C}{G}{G}{W}{W}", manaOptions);
}
use of mage.abilities.mana.ManaOptions in project mage by magefree.
the class ManaOptionsTest method testNykthos4a.
// Nykthos, Shrine to Nyx
@Test
public void testNykthos4a() {
addCard(Zone.BATTLEFIELD, playerA, "Sedge Scorpion", 4);
addCard(Zone.BATTLEFIELD, playerA, "Forest", 3);
// {T}: Add {C}.
// {2}, {T}: Choose a color. Add an amount of mana of that color equal to your devotion to that color. (Your devotion to a color is the number of mana symbols of that color in the mana costs of permanents you control.)
addCard(Zone.BATTLEFIELD, playerA, "Nykthos, Shrine to Nyx", 1);
setStopAt(1, PhaseStep.UPKEEP);
execute();
ManaOptions manaOptions = playerA.getAvailableManaTest(currentGame);
assertDuplicatedManaOptions(manaOptions);
Assert.assertEquals("mana variations don't fit", 2, manaOptions.size());
assertManaOptions("{C}{G}{G}{G}", manaOptions);
assertManaOptions("{G}{G}{G}{G}{G}", manaOptions);
}
use of mage.abilities.mana.ManaOptions in project mage by magefree.
the class ManaOptionsTest method testNykthos3.
@Test
public void testNykthos3() {
addCard(Zone.BATTLEFIELD, playerA, "Sylvan Caryatid", 1);
addCard(Zone.BATTLEFIELD, playerA, "Forest", 1);
addCard(Zone.BATTLEFIELD, playerA, "Nykthos, Shrine to Nyx", 1);
setStopAt(1, PhaseStep.UPKEEP);
execute();
ManaOptions manaOptions = playerA.getAvailableManaTest(currentGame);
assertDuplicatedManaOptions(manaOptions);
Assert.assertEquals("mana variations don't fit", 1, manaOptions.size());
assertManaOptions("{C}{G}{Any}", manaOptions);
}
use of mage.abilities.mana.ManaOptions in project mage by magefree.
the class ManaOptionsTest method testCryptGhast.
@Test
public void testCryptGhast() {
// Extort (Whenever you cast a spell, you may pay {WB}. If you do, each opponent loses 1 life and you gain that much life.)
// Whenever you tap a Swamp for mana, add {B} (in addition to the mana the land produces).
addCard(Zone.BATTLEFIELD, playerA, "Crypt Ghast", 1);
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
setStopAt(1, PhaseStep.UPKEEP);
execute();
ManaOptions manaOptions = playerA.getAvailableManaTest(currentGame);
assertDuplicatedManaOptions(manaOptions);
Assert.assertEquals("mana variations don't fit", 1, manaOptions.size());
assertManaOptions("{B}{B}", manaOptions);
}
use of mage.abilities.mana.ManaOptions in project mage by magefree.
the class ManaOptionsTest method testMageRingNetwork2.
@Test
public void testMageRingNetwork2() {
// {T}: Add {C}.
// {T}, {1} : Put a storage counter on Mage-Ring Network.
// {T}, Remove any number of storage counters from Mage-Ring Network: Add {C} for each storage counter removed this way.
addCard(Zone.BATTLEFIELD, playerA, "Mage-Ring Network", 1);
addCounters(1, PhaseStep.UPKEEP, playerA, "Mage-Ring Network", CounterType.STORAGE, 4);
addCard(Zone.BATTLEFIELD, playerA, "Plains", 1);
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
setStopAt(1, PhaseStep.DRAW);
execute();
ManaOptions manaOptions = playerA.getAvailableManaTest(currentGame);
assertDuplicatedManaOptions(manaOptions);
Assert.assertEquals("mana variations don't fit", 1, manaOptions.size());
assertManaOptions("{C}{C}{C}{C}{W}{B}", manaOptions);
}
Aggregations