Release Healer Man 0.1.29
This commit is contained in:
1 parent
8c9809d3e0
commit
544c1bee91
120 files changed
+4363
-1036
No files matched your search
@@ -0,0 +1,42 @@
|
||||
import { beforeEach, describe, expect, it, vi } from "vitest";
|
||||
|
||||
const media = vi.hoisted(() => ({ ready: false, fetch: vi.fn() }));
|
||||
vi.mock("./combatMediaPack", () => ({
|
||||
COMBAT_MEDIA_MANIFEST_URL: "/assets/game/combat-effects/manifest.json",
|
||||
combatMediaPackReady: () => media.ready,
|
||||
fetchCombatMediaAsset: media.fetch,
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
vi.resetModules();
|
||||
media.ready = false;
|
||||
media.fetch.mockReset();
|
||||
});
|
||||
|
||||
describe("original media loading", () => {
|
||||
it("uses the original default once the pack is ready without changing the saved preference", async () => {
|
||||
const { DEFAULT_COMBAT_PRESENTATION_SETTINGS: settings, effectiveCombatVfxMode } = await import("./combatPresentation");
|
||||
expect(effectiveCombatVfxMode(settings)).toBe("generated");
|
||||
media.ready = true;
|
||||
expect(effectiveCombatVfxMode(settings)).toBe("original");
|
||||
expect(effectiveCombatVfxMode({ ...settings, originalMediaEnabled: false })).toBe("generated");
|
||||
expect(settings.vfxMode).toBe("original");
|
||||
});
|
||||
|
||||
it("does not poison manifest loading before installation or after a failed fetch", async () => {
|
||||
const { preloadCombatEffectManifest, combatEffectManifestEntry } = await import("./combatPresentation");
|
||||
await preloadCombatEffectManifest();
|
||||
expect(media.fetch).not.toHaveBeenCalled();
|
||||
|
||||
media.ready = true;
|
||||
media.fetch.mockRejectedValueOnce(new Error("Offline"));
|
||||
await preloadCombatEffectManifest();
|
||||
expect(combatEffectManifestEntry(2061, "wow335")).toBeNull();
|
||||
|
||||
const entry = { key: "wow335:2061", source: "wow335", spellId: 2061 };
|
||||
media.fetch.mockResolvedValueOnce(new Response(JSON.stringify({ schemaVersion: 1, entries: [entry] })));
|
||||
await preloadCombatEffectManifest();
|
||||
expect(combatEffectManifestEntry(2061, "wow335")).toEqual(entry);
|
||||
expect(media.fetch).toHaveBeenCalledTimes(2);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user