Class MagicianTests

java.lang.Object
com.pixelmonmod.pixelmon.api.test.impl.ability.MagicianTests

public class MagicianTests extends Object
Tests for Magician
  • Constructor Details

    • MagicianTests

      public MagicianTests()
  • Method Details

    • testStealsOpponentsItems

      public static CompletableFuture<TestResult> testStealsOpponentsItems(BattleTestHelper helper)
    • testMagicianUserHeldItem

      public static CompletableFuture<TestResult> testMagicianUserHeldItem(BattleTestHelper helper)
      Magician will not activate if the user already has a held item.

      In this test, a Klefki with the Magician hidden ability that holds a Wave Incense and knows Flash Cannon faces a Wynaut that holds a Sea Incense and knows Sleep Talk.

           Turn 1
           The Klefki uses Flash Cannon on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took damage.
           We verify that the Klefki is not holding a Sea Incense.
           We verify that the Klefki is holding a Wave Incense.
           We verify that the Wynaut is holding a Sea Incense.
       
    • testMagicianNotActivatedByFling

      public static CompletableFuture<TestResult> testMagicianNotActivatedByFling(BattleTestHelper helper)
      Fling does not activate Magician.

      In this test, a Hoopa with the Magician ability that holds a Wacan Berry and knows Fling faces a Wynaut that holds a Leftovers and knows Sleep Talk.

           Turn 1
           The Hoopa uses Fling on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took damage.
           We verify that the Hoopa is not holding a Leftovers.
           We verify that the Hoopa is not holding a Wacan Berry.
           We verify that the Wynaut is holding a Leftovers.
       
    • testMagicianNotActivatedByNaturalGift

      public static CompletableFuture<TestResult> testMagicianNotActivatedByNaturalGift(BattleTestHelper helper)
      Natural Gift does not activate Magician.

      In this test, a Hoopa with the Magician ability that holds a Wacan Berry and (illegally) knows Natural Gift faces a Wynaut that holds a Leftovers and knows Sleep Talk.

           Turn 1
           The Hoopa uses Natural Gift on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took damage.
           We verify that the Hoopa is not holding a Leftovers.
           We verify that the Hoopa is not holding a Wacan Berry.
           We verify that the Wynaut is holding a Leftovers.
       
    • testMagicianNotActivatedByFutureSight

      public static CompletableFuture<TestResult> testMagicianNotActivatedByFutureSight(BattleTestHelper helper)
      Future Sight and Doom Desire do not activate Magician.

      In this test, a Hoopa with the Magician ability that knows Future Sight faces a Wynaut that holds an Ever Stone and knows Sleep Talk.

           Turn 1
           The Hoopa uses Future Sight on the Wynaut.
           The Wynaut uses Sleep Talk.
           Turn 2
           The Hoopa uses Sleep Talk.
           The Wynaut uses Sleep Talk.
           Turn 3
           The Hoopa uses Sleep Talk.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took damage.
           We verify that the Hoopa is not holding an Ever Stone.
           We verify that the Wynaut is holding an Ever Stone.
       
    • testMagicianNotActivatedByHealingPresent

      public static CompletableFuture<TestResult> testMagicianNotActivatedByHealingPresent(BattleTestHelper helper)
      Present will activate the Ability only if it deals damage.

      In this test, a Hoopa with the Magician ability that (illegally) knows Present faces a Wynaut that holds a Leftovers and knows Sleep Talk.

           Turn 1
           The Hoopa uses Present on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           If the Wynaut did not take damage:
           We verify that the Hoopa is not holding a Leftovers.
           We verify that the Wynaut is holding a Leftovers.
           If the Wynaut did take damage:
           We verify that the Hoopa is holding a Leftovers.
           We verify that the Wynaut is not holding a Leftovers.
       
    • testKnockOffRemovesItemBeforeMagician

      public static CompletableFuture<TestResult> testKnockOffRemovesItemBeforeMagician(BattleTestHelper helper)
      Knock Off will remove the target's held item before Magician can steal it.

      In this test, a Hoopa with the Magician ability that knows Knock Off faces a Wynaut that holds a Leftovers and knows Sleep Talk.

           Turn 1
           The Hoopa uses Knock Off on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took some damage.
           We verify that the Hoopa is not holding a Leftovers.
           We verify that the Wynaut is not holding a Leftovers.
       
    • testPluckRemovesItemBeforeMagician

      public static CompletableFuture<TestResult> testPluckRemovesItemBeforeMagician(BattleTestHelper helper)
      Pluck and Bug Bite will steal the target's held item before Magician can steal it.

      In this test, a Hoopa with the Magician ability that (illegally) knows Pluck faces a Wynaut that holds a Liechi Berry and knows Sleep Talk.

           Turn 1
           The Hoopa uses Pluck on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took some damage.
           We verify that the Hoopa is not holding a Liechi Berry.
           We verify that the Wynaut is not holding a Liechi Berry.
           We verify that the Wynaut has not consumed an item.
           We verify that the Hoopa's Attack was raised by one stage.
       
    • testIncinerateDestroysItemBeforeMagician

      public static CompletableFuture<TestResult> testIncinerateDestroysItemBeforeMagician(BattleTestHelper helper)
      Incinerate will destroy the target's held item before Magician can steal it.

      In this test, a Braixen with the Magician ability that knows Incinerate faces a Wynaut that holds a Liechi Berry and knows Sleep Talk.

           Turn 1
           The Braixen uses Incinerate on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took some damage.
           We verify that the Braixen is not holding a Liechi Berry.
           We verify that the Wynaut is not holding a Liechi Berry.
           We verify that the Wynaut has not consumed an item.
       
    • testMagicianDoesNotActivateWhileUsingGem

      public static CompletableFuture<TestResult> testMagicianDoesNotActivateWhileUsingGem(BattleTestHelper helper)
      Magician will not activate if the Pokémon is holding a Gem even if the Gem is consumed when using the move.

      In this test, a Braixen with the Magician ability that holds a Fire Gem and knows Ember faces a Wynaut that holds a Liechi Berry and knows Sleep Talk.

           Turn 1
           The Braixen uses Ember on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut took some damage.
           We verify that the Braixen is not holding a Fire Gem.
           We verify that the Braixen's consumed item is a Fire Gem.
           We verify that the Braixen is not holding a Liechi Berry.
           We verify that the Wynaut is holding a Liechi Berry.
           We verify that the Wynaut has not consumed an item.
       
    • testMagicianActivatesWhileHoldingPowerHerb

      public static CompletableFuture<TestResult> testMagicianActivatesWhileHoldingPowerHerb(BattleTestHelper helper)
      Magician will activate if the Pokémon's held Power Herb is consumed when using the move.

      In this test, a Hoopa with the Magician ability that holds a Power Herb knows Phantom Force faces a Sharpedo that holds a Liechi Berry and knows Sleep Talk.

           Turn 1
           The Sharpedo uses Sleep Talk.
           The Hoopa uses Phantom Force on the Sharpedo.
           -
           We verify that the Sharpedo took some damage.
           We verify that the Hoopa is holding a Liechi Berry.
           We verify that the Sharpedo is not holding a Liechi Berry.
           We verify that the Sharpedo has not consumed an item.
       
    • testFocusSashActivatesBeforeMagician

      public static CompletableFuture<TestResult> testFocusSashActivatesBeforeMagician(BattleTestHelper helper)
      If a target's consumable held item is triggered by the move (such as a Focus Sash), it will be consumed before it can be stolen.

      In this test, a Hoopa with the Magician ability that knows Shadow Ball faces a Wynaut that holds a Focus Sash and knows Sleep Talk.

           Turn 1
           The Hoopa uses Shadow Ball on the Wynaut.
           The Wynaut uses Sleep Talk.
           -
           We verify that the Wynaut is at 1 HP.
           We verify that the Hoopa is not holding a Focus Sash.
           We verify that the Wynaut is not holding a Focus Sash.
           We verify that the Wynaut's consumed item is its Focus Sash.
       
    • testLumBerryActivatesBeforeMagician

      public static CompletableFuture<TestResult> testLumBerryActivatesBeforeMagician(BattleTestHelper helper)
      If a target's consumable held item is triggered by the move (such as a Lum Berry), it will be consumed before it can be stolen.

      In this test, a Fennekin with the Magician ability that knows Ember faces a Carvanha that holds a Lum Berry and knows Sleep Talk.

           Turn 1
           The Carvanha uses Sleep Talk.
           The Fennekin uses Ember on the Carvanha.
           -
           We verify that the Carvanha has taken damage.
           We verify that the Fennekin is not holding a Lum Berry.
           We verify that the Carvanha is not holding a Lum Berry.
           We verify that the Carvanha's consumed item is its Lum Berry.
       
    • testMagicianCanStealFocusBand

      public static CompletableFuture<TestResult> testMagicianCanStealFocusBand(BattleTestHelper helper)
      If a target holds a Focus Band, it can be activated by the move, then be stolen by Magician.

      In this test, a Fennekin with the Magician ability that knows Scratch faces a level 1 Cacturne that holds a Focus Band and knows Sleep Talk.

           Turn 1
           The Fennekin uses Scratch on the Cacturne.
           The Cacturne uses Sleep Talk.
           -
           We verify that the Cacturne has 1 HP left.
           We verify that the Fennekin is holding a Focus Band.
           We verify that the Cacturne is not holding a Focus Band.
       
    • testMagicianCanStealRockyHelmet

      public static CompletableFuture<TestResult> testMagicianCanStealRockyHelmet(BattleTestHelper helper)
      If a target holds a Rocky Helmet, it can be activated by the move, then be stolen by Magician.

      In this test, a Fennekin with the Magician ability that knows Scratch faces a Cacturne that holds a Rocky Helmet and knows Sleep Talk.

           Turn 1
           The Fennekin uses Scratch on the Cacturne.
           The Cacturne uses Sleep Talk.
           -
           We verify that the Cacturne has taken damage.
           We verify that the Fennekin has taken damage.
           We verify that the Fennekin is holding a Rocky Helmet.
           We verify that the Cacturne is not holding a Rocky Helmet.
       
    • testMagicianDoesNotStealUponFaintingFromLiquidOoze

      public static CompletableFuture<TestResult> testMagicianDoesNotStealUponFaintingFromLiquidOoze(BattleTestHelper helper)
      If the Pokémon with Magician faints when using the move (such as due to the target's Liquid Ooze), Magician will not steal the item.

      In this test, a Hoopa with the Magician ability at 5% HP that knows Dream Eater faces a Tentacool with the Liquid Ooze ability that is asleep, holding a Custap Berry, and knows Sleep Talk. Each team also has a Magikarp to potentially switch to.

           Turn 1
           The Hoopa uses Dream Eater on the Tentacool.
           The Tentacool uses Sleep Talk.
           The Magikarp switches in to replace the Hoopa.
           -
           We verify that the Tentacool has not fainted.
           We verify that the Tentacool has not taken damage.
           We verify that the Hoopa has fainted.
           We verify that the Hoopa is not holding a Custap Berry.
           We verify that the Tentacool is holding a Custap Berry.
       
    • testMagicianDoesNotStealUponFaintingFromRockyHelmet

      public static CompletableFuture<TestResult> testMagicianDoesNotStealUponFaintingFromRockyHelmet(BattleTestHelper helper)
      If the Pokémon with Magician faints when using the move (such as due to the target's held Rocky Helmet), Magician will not steal the item.

      In this test, a Fennekin with the Magician ability at 5% HP that knows Scratch faces a Cacturne that holds a Rocky Helmet and knows Sleep Talk. The Fennekin also has a Magikarp on its team.

           Turn 1
           The Fennekin uses Scratch on the Cacturne.
           The Cacturne uses Sleep Talk.
           The Magikarp switches in.
           -
           We verify that the Cacturne has taken damage.
           We verify that the Fennekin has fainted.
           We verify that the Fennekin is not holding a Rocky Helmet.
           We verify that the Cacturne is holding a Rocky Helmet.
       
    • testMagicianDoesNotStealUponFaintingFromRecoil

      public static CompletableFuture<TestResult> testMagicianDoesNotStealUponFaintingFromRecoil(BattleTestHelper helper)
      If the Pokémon with Magician faints when using the move (such as due to the Pokémon with this Ability using a recoil move), Magician will not steal the item.

      In this test, a Fennekin with the Magician ability at 5% HP that knows Take Down faces a Cacturne that holds a Custap Berry and knows Sleep Talk. The Fennekin also has a Magikarp on its team.

           Turn 1
           The Fennekin uses Take Down on the Cacturne.
           The Cacturne uses Sleep Talk.
           The Magikarp switches in.
           -
           We verify that the Cacturne has taken damage.
           We verify that the Fennekin has fainted.
           We verify that the Fennekin is not holding a Custap Berry.
           We verify that the Cacturne is holding a Custap Berry.
       
    • testMagicianDoesNotStealUponFaintingFromSelfDestruct

      public static CompletableFuture<TestResult> testMagicianDoesNotStealUponFaintingFromSelfDestruct(BattleTestHelper helper)
      If the Pokémon with Magician faints when using the move (such as due to a move that causes it to faint), Magician will not steal the item.

      In this test, a Fennekin with the Magician ability at 5% HP that (illegally) knows Self-Destruct faces a Cacturne that holds a Custap Berry and knows Sleep Talk. The Fennekin also has a Magikarp on its team.

           Turn 1
           The Fennekin uses Self-Destruct on the Cacturne.
           The Cacturne uses Sleep Talk.
           The Magikarp switches in.
           -
           We verify that the Cacturne has taken damage.
           We verify that the Fennekin has fainted.
           We verify that the Fennekin is not holding a Custap Berry.
           We verify that the Cacturne is holding a Custap Berry.
       
    • testMagicianChangesToMummyFirst

      public static CompletableFuture<TestResult> testMagicianChangesToMummyFirst(BattleTestHelper helper)
      If the move of the Pokémon with Magician triggers Mummy, so that it no longer has the Ability Magician, it cannot steal an item.

      In this test, a Fennekin with the Magician ability that knows Flame Charge faces a Cofagrigus with the Mummy ability that holds a Babiri Berry and knows Sleep Talk.

           Turn 1
           The Fennekin uses Flame Charge on the Cofagrigus.
           The Cofagrigus uses Sleep Talk.
           -
           We verify that the Cofagrigus has taken damage.
           We verify that the Fennekin is not holding a Babiri Berry.
           We verify that the Cofagrigus is holding a Babiri Berry.
       
    • testMagicianStealsOnMultistrikeMoveLastHit

      public static CompletableFuture<TestResult> testMagicianStealsOnMultistrikeMoveLastHit(BattleTestHelper helper)
      Magician activates after the last strike of a multistrike move.

      In this test, a Fennekin with the Magician ability that (illegally) knows Fury Swipes faces a Minccino that holds a Kee Berry and knows Sleep Talk.

           Turn 1
           The Minccino uses Sleep Talk.
           The Fennekin uses Fury Swipes on the Minccino.
           -
           We verify that the Minccino has taken damage.
           We verify that the Fennekin is not holding a Kee Berry.
           We verify that the Minccino is not holding a Kee Berry.
           We verify that the Minccino consumed item is its Kee Berry.
       
    • testMagicianStealsOnUserSwitchingAttack

      public static CompletableFuture<TestResult> testMagicianStealsOnUserSwitchingAttack(BattleTestHelper helper)
      Magician activates even if the user is switched out by its own attack, such as with U-turn, Volt Switch, or Flip Turn.

      In this test, a Fennekin with the Magician ability that (illegally) knows Volt Switch faces a Minccino that holds a Pamtre Berry and knows Sleep Talk. The Fennekin also has a Magikarp on its team to switch with.

           Turn 1
           The Minccino uses Sleep Talk.
           The Fennekin uses Volt Switch on the Minccino.
           The Fennekin switches out and the Magikarp switches in.
           -
           We verify that the Minccino has taken damage.
           We verify that the Fennekin is not on the battlefield.
           We verify that the Magikarp is on the battlefield.
           We verify that the Fennekin is holding a Pamtre Berry.
           We verify that the Minccino is not holding a Pamtre Berry.
       
    • testMagicianStealsOnTargetSwitchingAttack

      public static CompletableFuture<TestResult> testMagicianStealsOnTargetSwitchingAttack(BattleTestHelper helper)
      Magician activates even if the target is switched out by a move such as Dragon Tail or Circle Throw.

      In this test, a Delphox with the Magician ability that (illegally) knows Dragon Tail faces a Minccino that holds a Pamtre Berry and knows Sleep Talk. The Minccino also has a Magikarp on its team to switch with.

           Turn 1
           The Minccino uses Sleep Talk.
           The Delphox uses Dragon Tail on the Minccino.
           -
           We verify that the Minccino has not fainted.
           We verify that the Minccino has taken damage.
           We verify that the Minccino is not on the battlefield.
           We verify that the Magikarp is on the battlefield.
           We verify that the Delphox is holding a Pamtre Berry.
           We verify that the Minccino is not holding a Pamtre Berry.
       
    • testMagicianStealsBeforePickpocketSteals

      public static CompletableFuture<TestResult> testMagicianStealsBeforePickpocketSteals(BattleTestHelper helper)
      Pickpocket activates after Magician, so the Pokémon that has Pickpocket will always end up with the item if the move is a contact move.

      In this test, a Delphox with the Magician ability that knows Scratch faces a Binacle with Pickpocket that holds a Pamtre Berry and knows Sleep Talk.

           Turn 1
           The Delphox uses Scratch on the Binacle.
           The Binacle uses Sleep Talk.
           -
           We verify that the Binacle has not fainted.
           We verify that the Binacle has taken damage.
           We verify that the Delphox is not holding a Pamtre Berry.
           We verify that the Binacle is holding a Pamtre Berry.
       
    • testMagicianDoesNotStealFromStickyHold

      public static CompletableFuture<TestResult> testMagicianDoesNotStealFromStickyHold(BattleTestHelper helper)
      Magician cannot steal from a Pokémon with Sticky Hold.

      In this test, a Delphox with the Magician ability that knows Ember faces a Grimer with Pickpocket that holds a Watmel Berry and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Grimer.
           The Grimer uses Sleep Talk.
           -
           We verify that the Grimer has not fainted.
           We verify that the Grimer has taken damage.
           We verify that the Delphox is not holding a Watmel Berry.
           We verify that the Grimer is holding a Watmel Berry.
       
    • testMagicianStealsFromStickyHoldIfTargetFaints

      public static CompletableFuture<TestResult> testMagicianStealsFromStickyHoldIfTargetFaints(BattleTestHelper helper)
      Magician cannot steal from a Pokémon with Sticky Hold, unless the move causes the Pokémon with Sticky Hold to faint.

      In this test, a Delphox with the Magician ability that knows Psychic faces a Grimer with Pickpocket that holds a Watmel Berry and knows Sleep Talk. The Grimer also has a Magikarp on its team.

           Turn 1
           The Delphox uses Psychic on the Grimer.
           The Magikarp switches in to replace the fainted Grimer.
           The Magikarp uses Splash.
           -
           We verify that the Grimer has fainted.
           We verify that the Delphox is holding a Watmel Berry.
           We verify that the Grimer is not holding a Watmel Berry.
       
    • testMagicianDoesNotStealMail

      public static CompletableFuture<TestResult> testMagicianDoesNotStealMail(BattleTestHelper helper)
      Magician cannot steal Mail.

      In this test, a Delphox with the Magician ability that knows Ember faces a Seel that holds a Poke Mail Bubble and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Seel.
           The Seel uses Sleep Talk.
           -
           We verify that the Seel has taken damage.
           We verify that the Delphox is not holding a Poke Mail Bubble.
           We verify that the Seel is holding a Poke Mail Bubble.
       
    • testMagicianDoesNotStealZCrystals

      public static CompletableFuture<TestResult> testMagicianDoesNotStealZCrystals(BattleTestHelper helper)
      Magician cannot steal Z-Crystals.

      In this test, a Delphox with the Magician ability that knows Ember faces a Seel that holds a Waterium Z and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Seel.
           The Seel uses Sleep Talk.
           -
           We verify that the Seel has taken damage.
           We verify that the Delphox is not holding a Waterium Z.
           We verify that the Seel is holding a Waterium Z.
       
    • testMagicianDoesNotStealGriseousOrb

      public static CompletableFuture<TestResult> testMagicianDoesNotStealGriseousOrb(BattleTestHelper helper)
      Magician cannot steal a Griseous Orb if either Pokémon is Giratina.

      In this test, a Delphox with the Magician ability that knows Ember faces a Giratina that holds a Griseous Orb and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Giratina.
           The Giratina uses Sleep Talk.
           -
           We verify that the Giratina has taken damage.
           We verify that the Delphox is not holding a Griseous Orb.
           We verify that the Giratina is holding a Griseous Orb.
       
    • testMagicianDoesNotStealPlates

      public static CompletableFuture<TestResult> testMagicianDoesNotStealPlates(BattleTestHelper helper)
      Magician cannot steal a Plate if either Pokémon is Arceus.

      In this test, a Delphox with the Magician ability that knows Ember faces an Arceus that holds a Dread Plate and knows Sleep Talk.

           Turn 1
           The Arceus uses Sleep Talk.
           The Delphox uses Ember on the Arceus.
           -
           We verify that the Arceus has taken damage.
           We verify that the Delphox is not holding a Dread Plate.
           We verify that the Arceus is holding a Dread Plate.
       
    • testMagicianDoesNotStealMemories

      public static CompletableFuture<TestResult> testMagicianDoesNotStealMemories(BattleTestHelper helper)
      Magician cannot steal a Memory if either Pokémon is Silvally.

      In this test, a Delphox with the Magician ability that knows Ember faces a Silvally that holds a Fighting Memory and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Silvally.
           The Silvally uses Sleep Talk.
           -
           We verify that the Silvally has taken damage.
           We verify that the Delphox is not holding a Fighting Memory.
           We verify that the Silvally is holding a Fighting Memory.
       
    • testMagicianDoesNotStealDrives

      public static CompletableFuture<TestResult> testMagicianDoesNotStealDrives(BattleTestHelper helper)
      Magician cannot steal a Drive if either Pokémon is Genesect.

      In this test, a Delphox with the Magician ability that knows Ember faces a Genesect that holds a Shock Drive and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Genesect.
           The Genesect uses Sleep Talk.
           -
           We verify that the Genesect has taken damage.
           We verify that the Delphox is not holding a Shock Drive.
           We verify that the Genesect is holding a Shock Drive.
       
    • testMagicianDoesNotStealMegaStones

      public static CompletableFuture<TestResult> testMagicianDoesNotStealMegaStones(BattleTestHelper helper)
      Magician cannot steal a Mega Stone if either Pokémon can Mega Evolve using it.

      In this test, a Delphox with the Magician ability that knows Ember faces a Camerupt that holds a Cameruptite and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Camerupt.
           The Camerupt uses Sleep Talk.
           -
           We verify that the Camerupt has taken damage.
           We verify that the Delphox is not holding a Cameruptite.
           We verify that the Camerupt is holding a Cameruptite.
       
    • testMagicianDoesNotStealBlueOrb

      public static CompletableFuture<TestResult> testMagicianDoesNotStealBlueOrb(BattleTestHelper helper)
      Magician cannot steal a Blue Orb if either Pokémon is Kyogre.

      In this test, a Delphox with the Magician ability that knows Psychic faces a Kyogre that holds a Blue Orb and knows Sleep Talk.

           Turn 1
           The Delphox uses Psychic on the Kyogre.
           The Kyogre uses Sleep Talk.
           -
           We verify that the Kyogre has taken damage.
           We verify that the Delphox is not holding a Blue Orb.
           We verify that the Kyogre is holding a Blue Orb.
       
    • testMagicianDoesNotStealRedOrb

      public static CompletableFuture<TestResult> testMagicianDoesNotStealRedOrb(BattleTestHelper helper)
      Magician cannot steal a Red Orb if either Pokémon is Groudon.

      In this test, a Delphox with the Magician ability that knows Ember faces a Groudon that holds a Red Orb and knows Sleep Talk.

           Turn 1
           The Delphox uses Ember on the Groudon.
           The Groudon uses Sleep Talk.
           -
           We verify that the Groudon has taken damage.
           We verify that the Delphox is not holding a Red Orb.
           We verify that the Groudon is holding a Red Orb.
       
    • testMagicianDoesNotStealRustedSword

      public static CompletableFuture<TestResult> testMagicianDoesNotStealRustedSword(BattleTestHelper helper)
      Magician cannot steal a Rusted Sword if either Pokémon is Zacian.

      In this test, a Delphox with the Magician ability that knows Ember faces a Zacian that holds a Rusted Sword and knows Sleep Talk.

           Turn 1
           The Zacian uses Sleep Talk.
           The Delphox uses Ember on the Zacian.
           -
           We verify that the Zacian has taken damage.
           We verify that the Delphox is not holding a Rusted Sword.
           We verify that the Zacian is holding a Rusted Sword.
       
    • testMagicianDoesNotStealRustedShield

      public static CompletableFuture<TestResult> testMagicianDoesNotStealRustedShield(BattleTestHelper helper)
      Magician cannot steal a Rusted Shield if either Pokémon is Zamazenta.

      In this test, a Delphox with the Magician ability that knows Ember faces a Zamazenta that holds a Rusted Shield and knows Sleep Talk.

           Turn 1
           The Zamazenta uses Sleep Talk.
           The Delphox uses Ember on the Zamazenta.
           -
           We verify that the Zamazenta has taken damage.
           We verify that the Delphox is not holding a Rusted Shield.
           We verify that the Zamazenta is holding a Rusted Shield.
       
    • testMagicianDoesNotStealBoosterEnergyProtosynthesis

      public static CompletableFuture<TestResult> testMagicianDoesNotStealBoosterEnergyProtosynthesis(BattleTestHelper helper)
      Magician cannot steal a Booster Energy if either Pokémon has the Protosynthesis ability.

      In this test, a Delphox with the Magician ability that knows Ember faces a Gouging Fire that holds a Booster Energy and knows Sleep Talk as well as a Groudon.

           Before Turn 1
           The Groudon's Drought changes the weather to harsh sunlight.
           Turn 1
           The Delphox uses Ember on the Gouging Fire.
           The Gouging Fire uses Sleep Talk.
           -
           We verify that the Gouging Fire has taken damage.
           We verify that the Delphox is not holding a Booster Energy.
           We verify that the Gouging Fire is holding a Booster Energy.
       
    • testMagicianDoesNotStealBoosterEnergyQuarkDrive

      public static CompletableFuture<TestResult> testMagicianDoesNotStealBoosterEnergyQuarkDrive(BattleTestHelper helper)
      Magician cannot steal a Booster Energy if either Pokémon has the Quark Drive ability.

      In this test, a Delphox with the Magician ability that knows Ember faces an Iron Boulder that holds a Booster Energy and knows Sleep Talk as well as a Tapu Koko with the Electric Surge ability that knows Sleep Talk.

           Before Turn 1
           The Tapu Koko's Electric Surge changes the terrain to Electric Terrain.
           Turn 1
           The Iron Boulder uses Sleep Talk.
           The Delphox uses Ember on the Iron Boulder.
           -
           We verify that the Iron Boulder has taken damage.
           We verify that the Delphox is not holding a Booster Energy.
           We verify that the Iron Boulder is holding a Booster Energy.
       
    • testDoesNotStealWeaknessPolicyOnSuperEffectiveHits

      public static CompletableFuture<TestResult> testDoesNotStealWeaknessPolicyOnSuperEffectiveHits(BattleTestHelper helper)