package org.mage.test.cards.cost.additional; import mage.constants.PhaseStep; import mage.constants.Zone; import org.junit.Test; import org.mage.test.serverside.base.CardTestPlayerBase; /** * * @author noxx */ public class LivingDestinyTest extends CardTestPlayerBase { @Test public void testCard() { addCard(Zone.BATTLEFIELD, playerA, "Forest", 4); addCard(Zone.HAND, playerA, "Living Destiny"); addCard(Zone.HAND, playerA, "Craw Wurm"); castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Living Destiny"); setStopAt(1, PhaseStep.BEGIN_COMBAT); execute(); assertGraveyardCount(playerA, "Living Destiny", 1); assertLife(playerA, 26); assertLife(playerB, 20); } /** * Card can't be cast without possibility to pay additional cost */ @Test public void testCantCast() { addCard(Zone.BATTLEFIELD, playerA, "Forest", 4); addCard(Zone.HAND, playerA, "Living Destiny"); castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Living Destiny"); setStopAt(1, PhaseStep.BEGIN_COMBAT); execute(); // card is still at hand assertHandCount(playerA, 1); } /** * Tests that non creature card can't be revealed */ @Test public void testNonCreatureCard() { addCard(Zone.BATTLEFIELD, playerA, "Forest", 4); addCard(Zone.HAND, playerA, "Living Destiny"); addCard(Zone.HAND, playerA, "Divination"); castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Living Destiny"); setStopAt(1, PhaseStep.BEGIN_COMBAT); execute(); // cards are still at hand assertHandCount(playerA, 2); } }