forked from phenom/healer-man
Release Healer Man 0.1.12
This commit is contained in:
1 parent
13970d03c8
commit
65e24f644e
201 files changed
+5061
-123
No files matched your search
@@ -0,0 +1,42 @@
|
||||
import { createElement } from "react";
|
||||
import { renderToStaticMarkup } from "react-dom/server";
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { DEFAULT_COMBAT_PRESENTATION_SETTINGS, type CombatVfxMode } from "../game/combatPresentation";
|
||||
import { DEFAULT_GAMEPLAY_SETTINGS } from "../game/combatStore";
|
||||
import { OptionsPanel, nextCombatVfxMode } from "./OptionsPanel";
|
||||
|
||||
function renderOptions(mode: CombatVfxMode): string {
|
||||
return renderToStaticMarkup(createElement(OptionsPanel, {
|
||||
settings: DEFAULT_GAMEPLAY_SETTINGS,
|
||||
onChange: () => undefined,
|
||||
onReset: () => undefined,
|
||||
presentationSettings: { ...DEFAULT_COMBAT_PRESENTATION_SETTINGS, vfxMode: mode },
|
||||
onPresentationChange: () => undefined,
|
||||
onPresentationReset: () => undefined,
|
||||
open: true,
|
||||
onClose: () => undefined,
|
||||
}));
|
||||
}
|
||||
|
||||
describe("combat visual mode option", () => {
|
||||
it("cycles between generated and strict original selections", () => {
|
||||
expect(nextCombatVfxMode("generated")).toBe("original");
|
||||
expect(nextCombatVfxMode("original")).toBe("generated");
|
||||
});
|
||||
|
||||
it("renders generated as the default selection", () => {
|
||||
const markup = renderOptions(DEFAULT_COMBAT_PRESENTATION_SETTINGS.vfxMode);
|
||||
|
||||
expect(markup).toContain("Spell visual mode");
|
||||
expect(markup).toContain("Use the current generated combat effects.");
|
||||
expect(markup).toContain(">Generated</button>");
|
||||
});
|
||||
|
||||
it("states that original mode never substitutes generated effects", () => {
|
||||
const markup = renderOptions("original");
|
||||
|
||||
expect(markup).toContain("Use only packaged original source effects.");
|
||||
expect(markup).toContain("Unsupported spells show no visual effect.");
|
||||
expect(markup).toContain(">Original</button>");
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user