Class HungerSwitchTests

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

public class HungerSwitchTests extends Object
Tests for Hunger Switch
  • Constructor Details

    • HungerSwitchTests

      public HungerSwitchTests()
  • Method Details

    • testHungerSwitch

      public static CompletableFuture<TestResult> testHungerSwitch(BattleTestHelper helper)
      At the end of each turn, Hunger Switch switches a Morpeko with the Ability between its Full Belly Mode and Hangry Mode. In Full Belly Mode, Aura Wheel is an Electric-type move; in Hangry Mode, it is a Dark-type move.

      In this test a Morpeko in Full Belly Mode with the Hunger Switch ability and the Aura Wheel move faces a Virizion with Sleep Talk.

           Turn 1
           The Virizion uses Sleep Talk.
           The Morpeko uses Aura Wheel.
           Turn 2
           The Morpeko's Hunger Switch ability switches it to its Hangry Mode.
           The Virizion uses Sleep Talk.
           The Morpeko uses Aura Wheel.
           -
           After Turn 1
           We verify that the Morpeko's Aura Wheel was Electric-type.
           We verify that the Morpeko has switched to its Hangry Mode form.
           After Turn 2
           We verify that the Morpeko's Aura Wheel was Dark-type.
           We verify that the Morpeko has switched to its Full Belly Mode form.
       
    • testHungerSwitchWithEntrainment

      public static CompletableFuture<TestResult> testHungerSwitchWithEntrainment(BattleTestHelper helper)
      Entrainment fails if the user has Hunger Switch.

      In this test a Morpeko with the Hunger Switch ability that knows Entrainment faces a Houndour that knows Sleep Talk. Morpeko cannot legally learn Entrainment.

           Turn 1
           The Morpeko uses Entrainment.
           The Houndour uses Sleep Talk.
           -
           After Turn 1
           We verify that the Houndour's ability was not set to Hunger Switch.
       
    • testHungerSwitchWithRolePlay

      public static CompletableFuture<TestResult> testHungerSwitchWithRolePlay(BattleTestHelper helper)
      Role Play fails if the user has Hunger Switch.

      In this test a Morpeko with the Hunger Switch ability that knows Role Play faces a Houndour that knows Sleep Talk. Morpeko cannot legally learn Role Play.

           Turn 1
           The Morpeko uses Role Play.
           The Houndour uses Sleep Talk.
           -
           After Turn 1
           We verify that the Morpeko's ability is still Hunger Switch.
       
    • testHungerSwitchVsTrace

      public static CompletableFuture<TestResult> testHungerSwitchVsTrace(BattleTestHelper helper)
      Hunger Switch cannot be copied by Trace.

      In this test a Morpeko with the Hunger Switch ability and the Sleep Talk move faces a Porygon2 with the Trace ability and Sleep Talk.

           Turn 1
           The Morpeko uses Sleep Talk.
           The Porygon2 uses Sleep Talk.
           -
           After Turn 1
           We verify that the Porygon2 did not obtain Hunger Switch.
       
    • testHungerSwitchVsWanderingSpirit

      public static CompletableFuture<TestResult> testHungerSwitchVsWanderingSpirit(BattleTestHelper helper)
      Hunger Switch cannot be traded by Wandering Spirit.

      In this test a Morpeko with the Hunger Switch ability and the Bite move faces a Runerigus with the Wandering Spirit ability and Sleep Talk.

           Turn 1
           The Morpeko uses Bite.
           The Runerigus uses Sleep Talk.
           -
           After Turn 1
           We verify that the Morpeko did not have its ability switched to Wandering Spirit.
           We verify that the Runerigus did not have its ability switched to Hunger Switch.
       
    • testHungerSwitchWithPowerOfAlchemy

      public static CompletableFuture<TestResult> testHungerSwitchWithPowerOfAlchemy(BattleTestHelper helper)
      Power of Alchemy and Receiver cannot be replaced by Hunger Switch.

      In this test a Morpeko with the Hunger Switch ability that knows Sleep Talk is on a team with an Alolan Grimer with the Power of Alchemy ability that knows Sleep Talk. Together they face a Lokix that knows the move Axe Kick.

           Turn 1
           The Morpeko uses Sleep Talk.
           The Lokix uses Axe Kick on the Morpeko. The Morpeko faints.
           The Grimer uses Sleep Talk.
           -
           After Turn 1
           We verify that the Grimer's ability did not change to Axe Kick.
       
    • testHungerSwitchVsGastroAcid

      public static CompletableFuture<TestResult> testHungerSwitchVsGastroAcid(BattleTestHelper helper)
      If Morpeko's Hunger Switch is negated or replaced, it remains in its current form.

      In this test a Morpeko in its Full Belly Mode form with the Hunger Switch ability and the Aura Wheel move faces a Naganadel that knows Gastro Acid.

           Turn 1
           The Naganadel uses Gastro Acid.
           The Morpeko uses Aura Wheel.
           Turn 2
           The Naganadel uses Gastro Acid.
           The Morpeko uses Aura Wheel.
           -
           After Turn 1
           We verify that the Morpeko is in its Full Belly Mode form.
           We verify that the Morpeko's Aura Wheel was Electric-type.
           After Turn 2
           We verify that the Morpeko is in its Full Belly Mode form.
           We verify that the Morpeko's Aura Wheel was Electric-type.
       
    • testHungerSwitchVsImposter

      public static CompletableFuture<TestResult> testHungerSwitchVsImposter(BattleTestHelper helper)
      If a Pokémon other than Morpeko obtains Hunger Switch with Transform or Imposter, the Pokémon will not change forms.

      In this test a Morpeko in its Full Belly Mode form with the Hunger Switch ability and the Aura Wheel move faces a Ditto with the Imposter ability.

           Before Turn 1
           The Ditto's Imposter activates and the Ditto transforms into Full Belly Mode Morpeko.
           Turn 1
           The Morpeko uses Aura Wheel.
           The Ditto-Morpeko uses Aura Wheel.
           Turn 2
           The Morpeko uses Aura Wheel.
           The Ditto-Morpeko uses Aura Wheel.
           -
           After Turn 1
           We verify that the Morpeko's Aura Wheel was Electric-type.
           We verify that the Morpeko has switched to its Hangry Mode form.
           We verify that the Ditto-Morpeko's Aura Wheel was Electric-type.
           We verify that the Ditto-Morpeko is still in Full Belly Mode form.
           After Turn 2
           We verify that the Morpeko's Aura Wheel was Dark-type.
           We verify that the Morpeko has switched to its Full Belly Mode form.
           We verify that the Ditto-Morpeko's Aura Wheel was Electric-type.
           We verify that the Ditto-Morpeko is still in Full Belly Mode form.
       
    • testHungerSwitchWithTerastallization

      public static CompletableFuture<TestResult> testHungerSwitchWithTerastallization(BattleTestHelper helper)
      Hunger Switch does not activate while Morpeko is Terastallized.

      In this test a Morpeko with the Hunger Switch ability and the Aura Wheel move faces a Stonjourner that knows Sleep Talk.

           Before Turn 1
           The Morpeko terastallizes.
           Turn 1
           The Morpeko uses Aura Wheel.
           The Stonjourner uses Sleep Talk.
           -
           After Turn 1
           We verify that the Morpeko has not switched to its Hangry Mode form.