From eade5ff5bf7be5d7b48ff34889d4b28eb70a2cc6 Mon Sep 17 00:00:00 2001 From: innerthunder Date: Thu, 3 Oct 2024 17:37:57 -0700 Subject: [PATCH] Add Pledge Move sleep test --- src/test/moves/pledge_moves.test.ts | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/test/moves/pledge_moves.test.ts b/src/test/moves/pledge_moves.test.ts index 193460a29a5..d6fde16bf86 100644 --- a/src/test/moves/pledge_moves.test.ts +++ b/src/test/moves/pledge_moves.test.ts @@ -269,4 +269,28 @@ describe("Moves - Pledge Moves", () => { expect(ironHeadFlinchAttr.getMoveChance).toHaveLastReturnedWith(60); } ); + + it( + "Pledge Moves - should have no effect when the second ally's move is cancelled", + async () => { + game.override + .enemyMoveset([Moves.SPLASH, Moves.SPORE]); + + await game.classicMode.startBattle([Species.BLASTOISE, Species.CHARIZARD]); + + const enemyPokemon = game.scene.getEnemyField(); + + game.move.select(Moves.FIRE_PLEDGE, 0, BattlerIndex.ENEMY); + game.move.select(Moves.GRASS_PLEDGE, 1, BattlerIndex.ENEMY_2); + + await game.forceEnemyMove(Moves.SPORE, BattlerIndex.PLAYER_2); + await game.forceEnemyMove(Moves.SPLASH); + + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER, BattlerIndex.PLAYER_2, BattlerIndex.ENEMY_2]); + + await game.phaseInterceptor.to("BerryPhase", false); + + enemyPokemon.forEach((p) => expect(p.hp).toBe(p.getMaxHp())); + } + ); });