import { describe, expect, it } from "vitest"; import { encounterWorldIsReady, encounterWorldKey, rendererCanvasKey, } from "./sceneLifecycle"; describe("R3F scene lifecycle", () => { it("keeps the WebGL renderer stable while encounter worlds change", () => { expect(rendererCanvasKey(0)).toBe(rendererCanvasKey(0)); expect(rendererCanvasKey(0)).not.toBe(rendererCanvasKey(1)); expect(encounterWorldKey("wailing-caverns", 1)) .not.toBe(encounterWorldKey("wailing-caverns", 2)); }); it("only accepts collision readiness from the current encounter world", () => { expect(encounterWorldIsReady(null, 4)).toBe(false); expect(encounterWorldIsReady(4, 4)).toBe(true); expect(encounterWorldIsReady(4, 5)).toBe(false); }); });