package org.mage.test.cards.single.soi; import mage.constants.PhaseStep; import mage.constants.Zone; import mage.game.permanent.Permanent; import org.junit.Assert; import org.junit.Test; import org.mage.test.serverside.base.CardTestPlayerBase; /** * 3G Creature - Human Warrior Whenever Briarbridge Patrol deals damage to one * or more creatures, investigate. (Put a colorless Clue artifact token onto the * battlefield with "2, Sacrifice this artifact: Draw a card.") * * At the beginning of each end step, if you sacrificed three or more clues this * turn, you may put a creature card from your hand onto the battlefield. * * @author escplan9 (Derek Monturo - dmontur1 at gmail dot com) */ public class BriarbridgePatrolTest extends CardTestPlayerBase { /** * Deals damage to creature test. */ @Test public void dealtDamageToCreatureInvestigate() { addCard(Zone.BATTLEFIELD, playerA, "Briarbridge Patrol", 1); addCard(Zone.BATTLEFIELD, playerB, "Elite Vanguard", 1); attack(1, playerA, "Briarbridge Patrol"); block(1, playerB, "Elite Vanguard", "Briarbridge Patrol"); setStopAt(1, PhaseStep.POSTCOMBAT_MAIN); execute(); assertPermanentCount(playerA, "Clue", 1); assertPermanentCount(playerA, "Briarbridge Patrol", 1); assertPermanentCount(playerB, "Elite Vanguard", 0); assertGraveyardCount(playerB, "Elite Vanguard", 1); } /** * Reported bug: Briarbridge Patrol investigate doesn't trigger from * noncombat damage like Rabid Bite */ @Test public void dealtNonCombatDamageToCreatureInvestigate() { // Whenever Briarbridge Patrol deals damage to one or more creatures, investigate (Create a colorless Clue artifact token onto the battlefield with "2, Sacrifice this artifact: Draw a card."). // At the beginning of each end step, if you sacrificed three or more Clues this turn, you may put a creature card from your hand onto the battlefield. addCard(Zone.BATTLEFIELD, playerA, "Briarbridge Patrol", 1); addCard(Zone.BATTLEFIELD, playerB, "Wall of Roots", 1); // {1}{G} Sorcery Target creature you control deals damage equal to its power to target creature you don't control. addCard(Zone.HAND, playerA, "Rabid Bite"); addCard(Zone.BATTLEFIELD, playerA, "Forest", 2); castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Rabid Bite", "Briarbridge Patrol"); addTarget(playerA, "Wall of Roots"); setStopAt(1, PhaseStep.POSTCOMBAT_MAIN); execute(); assertPermanentCount(playerA, "Clue", 1); assertPermanentCount(playerA, "Briarbridge Patrol", 1); assertPermanentCount(playerB, "Wall of Roots", 1); Permanent wall = getPermanent("Wall of Roots", playerB); Assert.assertEquals("Wall of Roots should have 3 damage to it", 3, wall.getDamage()); } }