Files
healer-man/src/game/romDruidRogueSinisterRequest.test.ts
T
2026-10-02 10:38:12 -04:00

33 lines
1.3 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { ROM_ALL_ABILITIES } from "./romAbilityCatalog";
import { ROM_DRUID_ROGUE_SINISTER_REQUEST_RESOURCES } from "./romDruidRogueCurrentCoa";
describe("current CoA Druid/Rogue Sinister Request catalog", () => {
it("restores each listed party resource to its maximum with the current 15-second cooldown", () => {
const request = ROM_ALL_ABILITIES.find((ability) => ability.dbcSpellId === 494023
&& ability.classId === "rom-druid" && ability.secondaryClassId === "rom-rogue");
expect(request).toBeDefined();
expect(request).toMatchObject({
name: "Sinister Request",
target: "self",
range: { max: 5 },
radius: 15,
cooldownMs: 15_000,
costs: [],
effects: ROM_DRUID_ROGUE_SINISTER_REQUEST_RESOURCES.map((resource) => ({
kind: "resource",
amount: 100,
resource,
percentage: true,
scope: "party",
})),
});
expect(request!.description).toContain("restores the MP, Rage, Focus, Energy, Psi, and Nature's Power");
expect(request!.description).toContain("within radius 150");
expect(request!.description).toContain("Cooldown: 15 seconds");
expect(request!.description).not.toContain("does not yet apply");
expect(request!.description).not.toContain("attack and casting speed");
});
});