Class PerishSongTests
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic CompletableFuture
<TestResult> Perish Song affects Pokémon even if they are protected by Crafty Shield.static CompletableFuture
<TestResult> Perish Song affects Pokémon even if they are protected.static CompletableFuture
<TestResult> Perish Song affects Pokémon even if they are behind a substitute.static CompletableFuture
<TestResult> Perish Song does not affect Dynamax Pokémon in Max Raid Battles, but does in other battles.static CompletableFuture
<TestResult> Pokémon with Soundproof are no longer immune to their own moves, so if a Pokémon uses Perish Song, it will now gain a perish count even if it has Soundproof.static CompletableFuture
<TestResult> Perish Song bypasses accuracy checks to always hit.static CompletableFuture
<TestResult> If Perish Song becomes an Electric-type move (i.e.static CompletableFuture
<TestResult> If Perish Song becomes a Water-type move (i.e.static CompletableFuture
<TestResult> Perish Song does not affect Dynamax Pokémon in Max Raid Battles.static CompletableFuture
<TestResult> Perish Song does not affect Pokémon that already have a perish count.static CompletableFuture
<TestResult> Perish Song does not affect Pokémon with the Soundproof ability.static CompletableFuture
<TestResult> If the perish count of multiple Pokémon on the field reaches 0 at the end of a turn, they will now faint in the same order they would move in.static CompletableFuture
<TestResult> All Pokémon on the field when Perish Song is used gain a perish count.static CompletableFuture
<TestResult> If a Pokémon is switched out, its perish count is removed.static CompletableFuture
<TestResult> if a Pokémon switches out with Baton Pass, its perish count is transferred to the Pokémon switched in (even if it has the Ability Soundproof).static CompletableFuture
<TestResult> Perish Song is unaffected by Focus Sash.static CompletableFuture
<TestResult> Perish Song is unaffected by Magic Guard.static CompletableFuture
<TestResult> Perish Song is unaffected by Sturdy.static CompletableFuture
<TestResult> Throat Chop cannot prevent a Pokémon from using Z-Perish Song.static CompletableFuture
<TestResult> If powered up with a Normalium Z into Z-Perish Song, all of the user's lowered stats are reset.
-
Constructor Details
-
PerishSongTests
public PerishSongTests()
-
-
Method Details
-
testPerishSongMakesPokemonFaintAfterTurnFour
public static CompletableFuture<TestResult> testPerishSongMakesPokemonFaintAfterTurnFour(BattleTestHelper helper) All Pokémon on the field when Perish Song is used gain a perish count. Starting at 4 on the turn Perish Song is used, the perish count decreases by 1 at the end of each turn (including the turn Perish Song was used). When a Pokémon's perish count reaches 0, it faints.In this test, a Swablu that knows the moves Perish Song and Sleep Talk faces a Jynx that knows the move Sleep Talk.
Turn 1 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 2 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 3 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 4 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. - After Turn 3 We verify that the Swablu has not fainted. We verify that the Jynx has not fainted. After Turn 4 We verify that the Swablu has fainted. We verify that the Jynx has fainted.
-
testPerishSongDoesNotAffectSoundproof
public static CompletableFuture<TestResult> testPerishSongDoesNotAffectSoundproof(BattleTestHelper helper) Perish Song does not affect Pokémon with the Soundproof ability.In this test, a Swablu that knows the move Perish Song faces a Loudred with the Soundproof ability that knows the move Sleep Talk.
Turn 1 The Swablu uses Perish Song. The Loudred uses Sleep Talk. - We verify that the Loudred does not have the Perish status effect.
-
testPerishSongDoesNotAffectPokemonWithPerishCount
public static CompletableFuture<TestResult> testPerishSongDoesNotAffectPokemonWithPerishCount(BattleTestHelper helper) Perish Song does not affect Pokémon that already have a perish count.In this test, a Swablu that knows the move Perish Song faces a Jynx that knows the move Sleep Talk.
Turn 1 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 2 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 3 The Jynx uses Sleep Talk. The Swablu uses Perish Song. - After Turn 1 We verify that the Swablu has a perish count of 3. We verify that the Jynx has a perish count of 3. After Turn 2 We verify that the Swablu has a perish count of 2. We verify that the Jynx has a perish count of 2. After Turn 3 We verify that the Swablu has a perish count of 1. We verify that the Jynx has a perish count of 1.
-
testPerishSongBypassesAccuracyChecks
public static CompletableFuture<TestResult> testPerishSongBypassesAccuracyChecks(BattleTestHelper helper) Perish Song bypasses accuracy checks to always hit.In this test, a Swablu that knows the move Perish Song faces a Jynx that knows the move Substitute.
Before Turn 1 The Jynx has its Evasion raised by 6 stages. Turn 1 The Jynx uses Substitute. The Swablu uses Perish Song. - We verify that the Jynx has the Perish status.
-
testPerishSongAffectPokemonBehindSubstitute
public static CompletableFuture<TestResult> testPerishSongAffectPokemonBehindSubstitute(BattleTestHelper helper) Perish Song affects Pokémon even if they are behind a substitute.In this test, a Swablu that knows the move Perish Song faces a Jynx that knows the move Substitute.
Turn 1 The Jynx uses Substitute. The Swablu uses Perish Song. - We verify that the Jynx has the Perish status.
-
testPerishSongAffectPokemonBehindProtect
public static CompletableFuture<TestResult> testPerishSongAffectPokemonBehindProtect(BattleTestHelper helper) Perish Song affects Pokémon even if they are protected.In this test, a Swablu that knows the move Perish Song faces a Jynx that knows the move Protect.
Turn 1 The Jynx uses Protect. The Swablu uses Perish Song. - We verify that the Jynx has the Perish status.
-
testPerishSongAffectPokemonBehindCraftyShield
public static CompletableFuture<TestResult> testPerishSongAffectPokemonBehindCraftyShield(BattleTestHelper helper) Perish Song affects Pokémon even if they are protected by Crafty Shield.In this test, a Swablu that knows the move Perish Song faces a Yamask that knows the move Crafty Shield.
Turn 1 The Yamask uses Crafty Shield. The Swablu uses Perish Song. - We verify that the Yamask has the Perish status.
-
testPerishSongUnaffectedByFocusSash
public static CompletableFuture<TestResult> testPerishSongUnaffectedByFocusSash(BattleTestHelper helper) Perish Song is unaffected by Focus Sash.In this test, a Swablu that knows the moves Perish Song and Sleep Talk faces a Jynx that holds a Focus Sash and knows the move Sleep Talk.
Turn 1 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 2 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 3 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 4 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. - After Turn 4 We verify that the Swablu has fainted. We verify that the Jynx has fainted.
-
testPerishSongUnaffectedByMagicGuard
public static CompletableFuture<TestResult> testPerishSongUnaffectedByMagicGuard(BattleTestHelper helper) Perish Song is unaffected by Magic Guard.In this test, a Swablu that knows the move Perish Song faces a Solosis that has the Magic Guard ability and knows the move Sleep Talk.
Turn 1 The Swablu uses Perish Song. The Solosis uses Sleep Talk. Turn 2 The Swablu uses Sleep Talk. The Solosis uses Sleep Talk. Turn 3 The Swablu uses Sleep Talk. The Solosis uses Sleep Talk. Turn 4 The Swablu uses Sleep Talk. The Solosis uses Sleep Talk. - After Turn 4 We verify that the Swablu has fainted. We verify that the Solosis has fainted.
-
testPerishSongUnaffectedBySturdy
public static CompletableFuture<TestResult> testPerishSongUnaffectedBySturdy(BattleTestHelper helper) Perish Song is unaffected by Sturdy.In this test, a Swablu that knows the move Perish Song faces a Donphan that has the Sturdy ability and knows the move Sleep Talk.
Turn 1 The Swablu uses Perish Song. The Donphan uses Sleep Talk. Turn 2 The Swablu uses Sleep Talk. The Donphan uses Sleep Talk. Turn 3 The Swablu uses Sleep Talk. The Donphan uses Sleep Talk. Turn 4 The Swablu uses Sleep Talk. The Donphan uses Sleep Talk. - After Turn 4 We verify that the Swablu has fainted. We verify that the Donphan has fainted.
-
testPerishSongRemovedUponSwitchingOut
public static CompletableFuture<TestResult> testPerishSongRemovedUponSwitchingOut(BattleTestHelper helper) If a Pokémon is switched out, its perish count is removed.In this test, a Swablu that knows the moves Perish Song and Sleep Talk faces a Jynx that knows the move Sleep Talk and a Yamask that knows Sleep Talk.
Turn 1 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 2 The Jynx switches out and the Yamask switches in. The Swablu uses Sleep Talk. Turn 3 The Yamask switches out and the Jynx switches in. The Swablu uses Sleep Talk. Turn 4 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. - After Turn 1 We verify that the Jynx has the Perish status. After Turn 2 We verify that the Yamask does not have the Perish status. After Turn 3 We verify that the Jynx does not have the Perish status. After Turn 4 We verify that the Jynx has not fainted. We verify that the Swablu has fainted.
-
testPerishSongTransfersWithBatonPass
public static CompletableFuture<TestResult> testPerishSongTransfersWithBatonPass(BattleTestHelper helper) if a Pokémon switches out with Baton Pass, its perish count is transferred to the Pokémon switched in (even if it has the Ability Soundproof).In this test, a Swablu that knows the moves Perish Song and Sleep Talk faces a Patrat that knows the move Sleep Talk and a Loudred with the Soundproof ability that knows Sleep Talk.
Turn 1 The Swablu uses Perish Song. The Patrat uses Baton Pass. The Loudred switches in. - After Turn 1 We verify that the Loudred has the Perish status.
-
testPerishSongCanBeBlockedWhenElectricType
public static CompletableFuture<TestResult> testPerishSongCanBeBlockedWhenElectricType(BattleTestHelper helper) If Perish Song becomes an Electric-type move (i.e. due to Ion Deluge, Plasma Fists, or Galvanize), Pokémon with Volt Absorb, Lightning Rod, or Motor Drive are immune to it, and Perish Song causes the Abilities to activate accordingly.In this Triple Battle test, a Swablu that knows the move Perish Song is on a team with a Lanturn with the Illuminate ability that knows the move Ion Deluge. They face a Dracozolt with the Volt Absorb ability at 80% HP that knows the move Sleep Talk, a Goldeen with its hidden ability Lightning Rod that knows Sleep Talk, and an Emolga with its hidden ability Motor Drive that knows Sleep Talk.
Turn 1 The Lanturn uses Ion Deluge. The Emolga uses Sleep Talk. The Dracozolt uses Sleep Talk. The Goldeen uses Sleep Talk. The Swablu uses Perish Song. - Before Turn 1 We verify that the Dracozolt is not at full health. After Turn 1 We verify that the Swablu's Perish Song was made into an Electric-type move. We verify that the Swablu has the Perish status. We verify that the Lanturn has the Perish status. We verify that the Dracozolt does not have the Perish status. We verify that the Goldeen does not have the Perish status. We verify that the Emolga does not have the Perish status. We verify that the Dracozolt is at full health. We verify that the Goldeen had its Special Attack raised by one stage. We verify that the Emolga had its Speed raised by one stage.
-
testPerishSongCanBeBlockedWhenWaterType
public static CompletableFuture<TestResult> testPerishSongCanBeBlockedWhenWaterType(BattleTestHelper helper) If Perish Song becomes a Water-type move (i.e. due to Liquid Voice), Pokémon with Water Absorb, Storm Drain, or Dry Skin are immune to it, and the Abilities will activate accordingly.In this Triple Battle test, a Popplio with its hidden ability Liquid Voice that knows the move Perish Song faces a team composed of a Poliwag with the Water Absorb ability at 80% HP that knows the move Sleep Talk, a Finneon with the Storm Drain ability that knows Sleep Talk, and a Heliolisk with the Dry Skin ability at 80% HP that knows Sleep Talk.
Turn 1 The Heliolisk uses Sleep Talk. The Poliwag uses Sleep Talk. The Finneon uses Sleep Talk. The Popplio uses Perish Song. - Before Turn 1 We verify that the Poliwag is not at full health. We verify that the Heliolisk is not at full health. After Turn 1 We verify that the Popplio's Perish Song was made into a Water-type move. We verify that the Popplio has the Perish status. We verify that the Poliwag does not have the Perish status. We verify that the Finneon does not have the Perish status. We verify that the Heliolisk does not have the Perish status. We verify that the Poliwag is at full health. We verify that the Finneon had its Special Attack raised by one stage. We verify that the Heliolisk is at full health.
-
testZPerishSongResetsLoweredStats
public static CompletableFuture<TestResult> testZPerishSongResetsLoweredStats(BattleTestHelper helper) If powered up with a Normalium Z into Z-Perish Song, all of the user's lowered stats are reset.In this test, a Swablu that holds a Normalium Z and knows the moves Perish Song and Sleep Talk faces a Sobble that knows the move Tearful Look.
Turn 1 The Sobble uses Tearful Look. The Swablu uses Sleep Talk. Turn 2 The Sobble uses Tearful Look. The Swablu uses Z-Perish Song. - We verify that the Swablu's Attack was reset. We verify that the Swablu's Special Attack was reset.
-
testZPerishSongNotBlockedByThroatChop
public static CompletableFuture<TestResult> testZPerishSongNotBlockedByThroatChop(BattleTestHelper helper) Throat Chop cannot prevent a Pokémon from using Z-Perish Song.In this test, a Swablu that holds a Normalium Z and knows the move Perish Song faces a Wiglett that knows the move Throat Chop.
Turn 1 The Wiglett uses Throat Chop. The Swablu uses Z-Perish Song. - We verify that the Swablu has the Perish status. We verify that the Wiglett has the Perish status.
-
testPerishSongDoesNotAffectDynamaxPokemonInMaxRaids
public static CompletableFuture<TestResult> testPerishSongDoesNotAffectDynamaxPokemonInMaxRaids(BattleTestHelper helper) Perish Song does not affect Dynamax Pokémon in Max Raid Battles.In this Max Raid Battle test, a Swablu that knows the move Perish Song faces a Wiglett that can Dynamax and that knows the move Mud-Slap.
Turn 1 The Wiglett Dynamaxes. The Wiglett uses Max Quake. The Swablu uses Perish Song. - Before Turn 1 We verify that the battle is a Max Raid Battle. After Turn 1 We verify that the Swablu has the Perish status. We verify that the Wiglett does not have the Perish status.
-
testPerishSongAffectsDynamaxPokemon
public static CompletableFuture<TestResult> testPerishSongAffectsDynamaxPokemon(BattleTestHelper helper) Perish Song does not affect Dynamax Pokémon in Max Raid Battles, but does in other battles.In this test, a Swablu that knows the move Perish Song faces a Wiglett that can Dynamax and that knows the move Mud-Slap.
Turn 1 The Wiglett Dynamaxes. The Wiglett uses Max Quake. The Swablu uses Perish Song. - We verify that the Swablu has the Perish status. We verify that the Wiglett has the Perish status.
-
testPerishSongMakesFastestPokemonFaintFirst
public static CompletableFuture<TestResult> testPerishSongMakesFastestPokemonFaintFirst(BattleTestHelper helper) If the perish count of multiple Pokémon on the field reaches 0 at the end of a turn, they will now faint in the same order they would move in.In this test, a Swablu that knows the moves Perish Song and Sleep Talk faces a Jynx that knows the move Sleep Talk.
Turn 1 The Jynx uses Sleep Talk. The Swablu uses Perish Song. Turn 2 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 3 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. Turn 4 The Jynx uses Sleep Talk. The Swablu uses Sleep Talk. - After Turn 4 We verify that the Swablu has fainted. We verify that the Jynx has fainted. We verify that Player 1 and the Swablu won the battle.
-
testPerishSongAffectsUserWithSoundproof
public static CompletableFuture<TestResult> testPerishSongAffectsUserWithSoundproof(BattleTestHelper helper) Pokémon with Soundproof are no longer immune to their own moves, so if a Pokémon uses Perish Song, it will now gain a perish count even if it has Soundproof.In this test, a Loudred with the Soundproof ability that illegally knows the move Perish Song faces a Swablu that knows the move Sleep Talk.
Turn 1 The Swablu uses Sleep Talk. The Loudred uses Perish Song. - We verify that the Swablu has the Perish status effect. We verify that the Loudred has the Perish status effect.
-