mirror of
https://github.com/magefree/mage.git
synced 2025-12-23 20:11:59 -08:00
Merge remote-tracking branch 'magefree/master'
This commit is contained in:
commit
85dc15c5dc
61 changed files with 1443 additions and 702 deletions
|
|
@ -7,6 +7,7 @@ package org.mage.test.cards.abilities.keywords;
|
|||
|
||||
import mage.constants.PhaseStep;
|
||||
import mage.constants.Zone;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
|
|
@ -16,9 +17,9 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
|
|||
*/
|
||||
public class ProwlTest extends CardTestPlayerBase {
|
||||
|
||||
@Ignore // have not figured out how to have the test API cast a card using Prowl yet
|
||||
@Test
|
||||
public void testBasicProwlCasting() {
|
||||
|
||||
public void testBasicProwlCasting() {
|
||||
// Auntie's Snitch {2}{B} Creature — Goblin Rogue (3/1)
|
||||
// Auntie's Snitch can't block.
|
||||
// Prowl {1}{B} (You may cast this for its prowl cost if you dealt combat damage to a player this turn with a Goblin or Rogue.)
|
||||
|
|
@ -46,6 +47,7 @@ public class ProwlTest extends CardTestPlayerBase {
|
|||
* Reported bug: Prowl is not taking into consideration other cost reducing effects. For instance Goblin Warchief
|
||||
* does not reduce the Prowl cost of other Goblin cards with Prowl ability.
|
||||
*/
|
||||
@Ignore // have not figured out how to have the test API cast a card using Prowl yet
|
||||
@Test
|
||||
public void testProwlWithCostDiscount() {
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,56 @@
|
|||
package org.mage.test.cards.single;
|
||||
|
||||
import mage.constants.PhaseStep;
|
||||
import mage.constants.Zone;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author cg5
|
||||
*/
|
||||
public class GratuitousViolenceTest extends CardTestPlayerBase {
|
||||
@Test
|
||||
public void testDoublesDamageFromCreatures() {
|
||||
// Enchantment: If a creature you control would deal damage to a creature
|
||||
// or player, it deals double that damage to that creature or player instead.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Gratuitous Violence");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Elvish Visionary"); // 1/1
|
||||
|
||||
attack(1, playerA, "Elvish Visionary");
|
||||
|
||||
setStopAt(1, PhaseStep.POSTCOMBAT_MAIN);
|
||||
execute();
|
||||
assertLife(playerB, 18);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIgnoresNonCreatures() {
|
||||
// Legendary Enchantment - Shrine: At the beginning of your upkeep, Honden of Infinite
|
||||
// Rage deals damage to target creature or player equal to the number of Shrines you control.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Honden of Infinite Rage");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Gratuitous Violence");
|
||||
|
||||
addTarget(playerA, playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.PRECOMBAT_MAIN);
|
||||
execute();
|
||||
|
||||
// Honden should deal 1 damage at upkeep (since playerA only
|
||||
// has one Shrine). GV should not double this.
|
||||
assertLife(playerB, 19);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIgnoresInstants() {
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Gratuitous Violence");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mountain");
|
||||
addCard(Zone.HAND, playerA, "Lightning Bolt");
|
||||
|
||||
castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Lightning Bolt", playerB);
|
||||
|
||||
setStopAt(1, PhaseStep.POSTCOMBAT_MAIN);
|
||||
execute();
|
||||
assertLife(playerB, 17);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue