mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-09-23 15:03:24 +02:00
Add regression test to ensure pokemon generates with sufficient move counts
This commit is contained in:
parent
bf3b1ca131
commit
00f9536d3a
@ -1,4 +1,4 @@
|
|||||||
import { __INTERNAL_TEST_EXPORTS } from "#app/ai/ai-moveset-gen";
|
import { __INTERNAL_TEST_EXPORTS, generateMoveset } from "#app/ai/ai-moveset-gen";
|
||||||
import {
|
import {
|
||||||
COMMON_TIER_TM_LEVEL_REQUIREMENT,
|
COMMON_TIER_TM_LEVEL_REQUIREMENT,
|
||||||
GREAT_TIER_TM_LEVEL_REQUIREMENT,
|
GREAT_TIER_TM_LEVEL_REQUIREMENT,
|
||||||
@ -282,4 +282,28 @@ describe("Regression Tests - ai-moveset-gen.ts", () => {
|
|||||||
).not.toThrow();
|
).not.toThrow();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe("generateMoveset", () => {
|
||||||
|
it("should spawn with 4 moves if possible", async () => {
|
||||||
|
// Need to be in a wave for moveset generation to not actually break
|
||||||
|
await game.classicMode.startBattle([SpeciesId.PIKACHU]);
|
||||||
|
|
||||||
|
// Create a pokemon that can learn at least 4 moves
|
||||||
|
pokemon = createTestablePokemon(SpeciesId.ROCKRUFF, { level: 15 });
|
||||||
|
vi.spyOn(pokemon, "getLevelMoves").mockReturnValue([
|
||||||
|
[1, MoveId.TACKLE],
|
||||||
|
[4, MoveId.LEER],
|
||||||
|
[7, MoveId.SAND_ATTACK],
|
||||||
|
[10, MoveId.ROCK_THROW],
|
||||||
|
[13, MoveId.DOUBLE_TEAM],
|
||||||
|
]);
|
||||||
|
|
||||||
|
// Generate the moveset
|
||||||
|
generateMoveset(pokemon);
|
||||||
|
expect(pokemon.moveset).toHaveLength(4);
|
||||||
|
// Unlike other test suites, phase interceptor is not automatically restored after the tests here,
|
||||||
|
// since most tests in this suite do not need the phase
|
||||||
|
game.phaseInterceptor.restoreOg();
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user