mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-04-19 03:55:13 -04:00
* Reuse global scene between tests Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com> * Add missing each method to mockContainer * Fix select-modifier-phase test * Sanitize overrides before tests Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com> * Sanitize overrides before tests Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com> * [WIP] fix things * Fix tests not working with --no-isolate * Update npm tests to use no isolate * Update test-shard-template * Update package.json Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> --------- Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
56 lines
1.7 KiB
TypeScript
56 lines
1.7 KiB
TypeScript
import type BattleScene from "#app/battle-scene";
|
|
import { LoginPhase } from "#app/phases/login-phase";
|
|
import { TitlePhase } from "#app/phases/title-phase";
|
|
import { UnavailablePhase } from "#app/phases/unavailable-phase";
|
|
import { Mode } from "#app/ui/ui";
|
|
import GameManager from "#test/testUtils/gameManager";
|
|
import Phaser from "phaser";
|
|
import { afterEach, beforeAll, beforeEach, describe, expect, it } from "vitest";
|
|
|
|
describe("Phases", () => {
|
|
let phaserGame: Phaser.Game;
|
|
let game: GameManager;
|
|
let scene: BattleScene;
|
|
|
|
beforeAll(() => {
|
|
phaserGame = new Phaser.Game({
|
|
type: Phaser.HEADLESS,
|
|
});
|
|
});
|
|
|
|
afterEach(() => {
|
|
game.phaseInterceptor.restoreOg();
|
|
});
|
|
|
|
beforeEach(() => {
|
|
game = new GameManager(phaserGame);
|
|
scene = game.scene;
|
|
});
|
|
|
|
describe("LoginPhase", () => {
|
|
it("should start the login phase", async () => {
|
|
const loginPhase = new LoginPhase();
|
|
scene.unshiftPhase(loginPhase);
|
|
await game.phaseInterceptor.to(LoginPhase);
|
|
expect(scene.ui.getMode()).to.equal(Mode.MESSAGE);
|
|
});
|
|
});
|
|
|
|
describe("TitlePhase", () => {
|
|
it("should start the title phase", async () => {
|
|
const titlePhase = new TitlePhase();
|
|
scene.unshiftPhase(titlePhase);
|
|
await game.phaseInterceptor.to(TitlePhase);
|
|
expect(scene.ui.getMode()).to.equal(Mode.TITLE);
|
|
});
|
|
});
|
|
|
|
describe("UnavailablePhase", () => {
|
|
it("should start the unavailable phase", async () => {
|
|
const unavailablePhase = new UnavailablePhase();
|
|
scene.unshiftPhase(unavailablePhase);
|
|
await game.phaseInterceptor.to(UnavailablePhase);
|
|
expect(scene.ui.getMode()).to.equal(Mode.UNAVAILABLE);
|
|
}, 20000);
|
|
});
|
|
});
|