Update Healer Man server

This commit is contained in:
phenom committed 2026-09-19 21:01:51 -04:00
1 parent f8314e7de1
commit 1fedb9368d
76 files changed
+20556 -2523

No files matched your search

+21 -2
View File
@@ -2,7 +2,11 @@ import { describe, expect, it } from "vitest";
import { CLASSES } from "../../app/characterCatalog";
import { partyRolesForClass } from "../partyRoles";
import { runtimeNormalizeTalentRanks } from "../talentRuntimeCatalog";
import { loadCanonicalBenchmarkBuilds } from "./benchmarkBuilds";
import {
loadCanonicalBenchmarkBuilds,
loadSelectableBenchmarkBuilds,
selectableBenchmarkBuildCatalog,
} from "./benchmarkBuilds";
describe("canonical benchmark builds", () => {
it("covers every declared class-role pair exactly once with legal ranks", async () => {
@@ -17,7 +21,7 @@ describe("canonical benchmark builds", () => {
expect(new Set(actualPairs)).toEqual(new Set(expectedPairs));
for (const build of builds) {
expect(build.level).toBe(60);
expect(build.gearPresetId).toBe("coefficient-empty");
expect(build.gearPresetId).toBe("virtual-heirloom");
expect(build.inventory).toEqual([]);
expect(build.equipment).toEqual({});
expect(runtimeNormalizeTalentRanks(build.classId, build.level, build.talentRanks)).toEqual(build.talentRanks);
@@ -33,4 +37,19 @@ describe("canonical benchmark builds", () => {
"rom-priest:damage",
]);
});
it("keeps both named classic talent builds and marks Playerbots as the default", async () => {
const catalog = selectableBenchmarkBuildCatalog(60, ["mage"]);
const builds = await loadSelectableBenchmarkBuilds(60, ["mage"]);
expect(catalog).toHaveLength(6);
expect(builds).toHaveLength(6);
expect(new Set(builds.map((build) => build.characterName)).size).toBe(6);
for (const specialization of ["Arcane", "Fire", "Frost"]) {
const variants = builds.filter((build) => build.orientation === specialization);
expect(variants).toHaveLength(2);
expect(variants.filter((build) => build.defaultTalentBuild)).toHaveLength(1);
expect(variants.find((build) => build.defaultTalentBuild)?.talentBuildSource)
.toBe("azerothcore-playerbots@531282e");
}
}, 30_000);
});