From 2439b9903159f8c2909bf806360f22bef4f9c1e5 Mon Sep 17 00:00:00 2001 From: cg5 Date: Mon, 29 Aug 2016 19:51:26 +0200 Subject: [PATCH] Add tests for Gratuitous Violence - confirmed bug --- .../cards/single/GratuitousViolenceTest.java | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Mage.Tests/src/test/java/org/mage/test/cards/single/GratuitousViolenceTest.java diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/GratuitousViolenceTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/GratuitousViolenceTest.java new file mode 100644 index 00000000000..1301232e241 --- /dev/null +++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/GratuitousViolenceTest.java @@ -0,0 +1,52 @@ +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 testWorksOnCreatures() { + 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() { + addCard(Zone.BATTLEFIELD, playerA, "Gratuitous Violence"); + addCard(Zone.BATTLEFIELD, playerA, "Honden of Infinite Rage"); + + 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); + } +}