Release Healer Man 0.1.58
This commit is contained in:
1 parent
14e105642c
commit
246b4832b0
38 files changed
+952
-93
No files matched your search
@@ -86,6 +86,42 @@ describe("dungeon party composition", () => {
|
||||
.toEqual(["hunter:marksmanship", "rogue:assassination"]);
|
||||
});
|
||||
|
||||
it("fills only missing roles around every real player in an online five-player party", () => {
|
||||
const options = {
|
||||
occupiedHumanRoles: ["healer", "damage"] as const,
|
||||
excludedPlayerSpecializationIds: ["priest:discipline", "mage:fire"],
|
||||
allowedCompanionSpecializationIds: [
|
||||
"warrior:protection",
|
||||
"priest:discipline",
|
||||
"hunter:marksmanship",
|
||||
"mage:fire",
|
||||
"rogue:assassination",
|
||||
],
|
||||
};
|
||||
const leaderParty = createDungeonParty("shared-activity", 20, "healer", 4, "wow", options);
|
||||
const memberParty = createDungeonParty("shared-activity", 20, "damage", 4, "wow", options);
|
||||
|
||||
expect(memberParty).toEqual(leaderParty);
|
||||
expect(leaderParty).toHaveLength(3);
|
||||
expect(leaderParty.map((member) => member.role).sort()).toEqual(["damage", "damage", "tank"]);
|
||||
expect(leaderParty.every((member) => options.allowedCompanionSpecializationIds.includes(member.specializationId!))).toBe(true);
|
||||
});
|
||||
|
||||
it("uses two damage NPCs when three real players already cover tank, healer, and damage", () => {
|
||||
const party = createDungeonParty("three-player-activity", 20, "tank", 3, "wow", {
|
||||
occupiedHumanRoles: ["tank", "healer", "damage"],
|
||||
allowedCompanionSpecializationIds: [
|
||||
"warrior:protection",
|
||||
"priest:discipline",
|
||||
"hunter:marksmanship",
|
||||
"mage:fire",
|
||||
"rogue:assassination",
|
||||
],
|
||||
});
|
||||
expect(party).toHaveLength(2);
|
||||
expect(party.every((member) => member.role === "damage")).toBe(true);
|
||||
});
|
||||
|
||||
it("keeps RoM generation unchanged when WoW readiness is restrictive", () => {
|
||||
const baseline = createDungeonParty("rom-readiness", 40, "damage", 5, "rom");
|
||||
const filtered = createDungeonParty("rom-readiness", 40, "damage", 5, "rom", {
|
||||
|
||||
Reference in new issue
Block a user