import { describe, expect, it } from "vitest"; import { wow335WarriorDamageShieldReflectDamage } from "./wow335WarriorDamageShieldRuntime"; describe("WoW 3.3.5 Warrior Damage Shield generated rank mechanics", () => { it.each([ [1, 100], [2, 200], ] as const)("reflects the generated rank %i percentage of block value", (rank, expected) => { expect(wow335WarriorDamageShieldReflectDamage(1_000, rank, true)).toBe(expected); }); it("does not reflect without rank, block value, or a landed direct melee hit", () => { expect(wow335WarriorDamageShieldReflectDamage(1_000, 0, true)).toBe(0); expect(wow335WarriorDamageShieldReflectDamage(1_000, 2, false)).toBe(0); expect(wow335WarriorDamageShieldReflectDamage(0, 2, true)).toBe(0); }); });