[OTC] Implement Cataclysmic Prospecting

This commit is contained in:
Susucre 2024-04-06 02:33:18 +02:00
parent 16b832198a
commit e217b3d0d8
4 changed files with 211 additions and 1 deletions

View file

@ -0,0 +1,58 @@
package org.mage.test.cards.single.otc;
import mage.constants.PhaseStep;
import mage.constants.Zone;
import org.junit.Test;
import org.mage.test.serverside.base.CardTestPlayerBase;
/**
* @author Susucr
*/
public class CataclysmicProspectingTest extends CardTestPlayerBase {
/**
* {@link mage.cards.c.CataclysmicProspecting Cataclysmic Prospecting} {X}{R}{R}
* Sorcery
* Cataclysmic Prospecting deals X damage to each creature. For each mana from a Desert spent to cast this spell, create a tapped Treasure token.
*/
private static final String prospecting = "Cataclysmic Prospecting";
@Test
public void test_Two_Desert() {
setStrictChooseMode(true);
addCard(Zone.BATTLEFIELD, playerB, "Indomitable Ancients"); // 2/10
addCard(Zone.BATTLEFIELD, playerA, "Hostile Desert", 2);
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 5);
addCard(Zone.HAND, playerA, prospecting);
setChoice(playerA, "X=5");
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, prospecting);
setStopAt(1, PhaseStep.BEGIN_COMBAT);
execute();
assertGraveyardCount(playerA, prospecting, 1);
assertDamageReceived(playerB, "Indomitable Ancients", 5);
assertPermanentCount(playerA, "Treasure Token", 2);
}
@Test
public void test_Zero_Desert() {
setStrictChooseMode(true);
addCard(Zone.BATTLEFIELD, playerB, "Indomitable Ancients"); // 2/10
addCard(Zone.BATTLEFIELD, playerA, "Mountain", 7);
addCard(Zone.HAND, playerA, prospecting);
setChoice(playerA, "X=5");
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, prospecting);
setStopAt(1, PhaseStep.BEGIN_COMBAT);
execute();
assertGraveyardCount(playerA, prospecting, 1);
assertDamageReceived(playerB, "Indomitable Ancients", 5);
assertPermanentCount(playerA, "Treasure Token", 0);
}
}