mirror of
https://github.com/magefree/mage.git
synced 2025-12-28 14:32:06 -08:00
[VIS] Implement Matopi Golem (#11323)
fix Skeleton Scavengers & Soldevi Sentry, and refactor a common effect for all 3.
This commit is contained in:
parent
a37fc0589a
commit
5b58ff242b
7 changed files with 200 additions and 78 deletions
|
|
@ -0,0 +1,40 @@
|
|||
package org.mage.test.cards.single.all;
|
||||
|
||||
import mage.constants.PhaseStep;
|
||||
import mage.constants.Zone;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
/**
|
||||
* @author Susucr
|
||||
*/
|
||||
public class SoldeviSentryTest extends CardTestPlayerBase {
|
||||
|
||||
/**
|
||||
* {@link mage.cards.s.SoldeviSentry} <br>
|
||||
* Soldevi Sentry {1} <br>
|
||||
* Artifact Creature — Soldier <br>
|
||||
* {1}: Choose target opponent. Regenerate Soldevi Sentry. When it regenerates this way, that player may draw a card. <br>
|
||||
* 1/1
|
||||
*/
|
||||
private static final String sentry = "Soldevi Sentry";
|
||||
|
||||
@Test
|
||||
public void test_ReflexiveOnRegenerate() {
|
||||
setStrictChooseMode(true);
|
||||
addCard(Zone.BATTLEFIELD, playerA, sentry);
|
||||
addCard(Zone.HAND, playerA, "Doom Blade");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
|
||||
activateAbility(1, PhaseStep.UPKEEP, playerA, "{1}: Choose", playerB);
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Doom Blade", sentry);
|
||||
setChoice(playerB, true); // yes to drawing a card in the reflexive trigger
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
||||
assertPermanentCount(playerA, sentry, 1);
|
||||
assertTapped(sentry, true);
|
||||
assertHandCount(playerB, 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package org.mage.test.cards.single.vis;
|
||||
|
||||
import mage.constants.PhaseStep;
|
||||
import mage.constants.Zone;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
/**
|
||||
* @author Susucr
|
||||
*/
|
||||
public class MatopiGolemTest extends CardTestPlayerBase {
|
||||
|
||||
/**
|
||||
* {@link mage.cards.m.MatopiGolem} <br>
|
||||
* Matopi Golem {5} <br>
|
||||
* Artifact Creature — Golem <br>
|
||||
* {1}: Regenerate Matopi Golem. When it regenerates this way, put a -1/-1 counter on it. <br>
|
||||
* 3/3
|
||||
*/
|
||||
private static final String golem = "Matopi Golem";
|
||||
|
||||
@Test
|
||||
public void test_ReflexiveOnRegenerate() {
|
||||
setStrictChooseMode(true);
|
||||
addCard(Zone.BATTLEFIELD, playerA, golem);
|
||||
addCard(Zone.HAND, playerA, "Doom Blade");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 3);
|
||||
|
||||
activateAbility(1, PhaseStep.UPKEEP, playerA, "{1}: Regenerate");
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Doom Blade", golem);
|
||||
|
||||
setStopAt(1, PhaseStep.BEGIN_COMBAT);
|
||||
execute();
|
||||
|
||||
assertPermanentCount(playerA, golem, 1);
|
||||
assertTapped(golem, true);
|
||||
assertPowerToughness(playerA, golem, 3 - 1, 3 - 1);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue