From d320c2e27b9d9b0cfd0c230a8ee81cef7cfb1389 Mon Sep 17 00:00:00 2001 From: Paliak <91493239+Paliak@users.noreply.github.com> Date: Mon, 18 Nov 2024 06:56:01 +0100 Subject: [PATCH] FIX: broken tests after changing default boss preset (#8327) Due to #8271 changing the default boss preset many tests that relied on enemy stats broke. This pr fixes that by changing the boss configuration back to "None" for affected tests. Additionally this commit adds an extra test for scorching ray exposure when using the automatic maximum sustainable stages mode. --- spec/System/TestDefence_spec.lua | 11 +++++++++-- spec/System/TestSkills_spec.lua | 11 ++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/spec/System/TestDefence_spec.lua b/spec/System/TestDefence_spec.lua index db44dd70..07c7f208 100644 --- a/spec/System/TestDefence_spec.lua +++ b/spec/System/TestDefence_spec.lua @@ -9,6 +9,10 @@ describe("TestDefence", function() -- boring part it("no armour max hits", function() + build.configTab.input.enemyIsBoss = "None" + build.configTab:BuildModList() + runCallback("OnFrame") + assert.are.equals(60, build.calcsTab.calcsOutput.PhysicalMaximumHitTaken) assert.are.equals(38, build.calcsTab.calcsOutput.FireMaximumHitTaken) assert.are.equals(38, build.calcsTab.calcsOutput.ColdMaximumHitTaken) @@ -19,6 +23,7 @@ describe("TestDefence", function() +200 to all resistances\n\z 200% additional Physical Damage Reduction\n\z " + build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(600, build.calcsTab.calcsOutput.PhysicalMaximumHitTaken) @@ -168,6 +173,7 @@ describe("TestDefence", function() When Hit during effect, 50% of Life loss from Damage taken occurs over 4 seconds instead\n\z " -- 50% progenesis should just simply double the life pool build.configTab.input.conditionUsingFlask = true + build.configTab.input.enemyIsBoss = "None" build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(600, build.calcsTab.calcsOutput.PhysicalMaximumHitTaken) @@ -186,7 +192,6 @@ describe("TestDefence", function() 100% less intelligence\n\z +60 to maximum energy shield\n\z " -- progenesis should not interact with pools other than life. - build.configTab.input.conditionUsingFlask = true build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(900, build.calcsTab.calcsOutput.PhysicalMaximumHitTaken) @@ -257,7 +262,6 @@ describe("TestDefence", function() 100% less intelligence\n\z +60 to maximum energy shield\n\z " -- wonkier numbers to test the pool reduction function - build.configTab.input.conditionUsingFlask = true build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(1300, build.calcsTab.calcsOutput.PhysicalMaximumHitTaken) @@ -323,6 +327,7 @@ describe("TestDefence", function() +940 to maximum life\n\z +10000 to armour\n\z " -- hit of 2000 on 10000 armour results in 50% DR which reduces the damage to 1000 - total HP + build.configTab.input.enemyIsBoss = "None" build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(1000, takenHitFromTypeMaxHit("Physical")) @@ -603,6 +608,7 @@ describe("TestDefence", function() end) it("energy shield bypass tests #pet", function() + build.configTab.input.enemyIsBoss = "None" -- Mastery build.configTab.input.customMods = [[ +40 to maximum life @@ -611,6 +617,7 @@ describe("TestDefence", function() You have no intelligence +60% to all resistances ]] + build.configTab:BuildModList() runCallback("OnFrame") assert.are.equals(300, build.calcsTab.calcsOutput.FireMaximumHitTaken) diff --git a/spec/System/TestSkills_spec.lua b/spec/System/TestSkills_spec.lua index 960156c6..0e67ddc8 100644 --- a/spec/System/TestSkills_spec.lua +++ b/spec/System/TestSkills_spec.lua @@ -86,8 +86,17 @@ describe("TestAttacks", function() srcInstance.skillStageCount = 8 build.modFlag = true build.buildFlag = true + build.configTab.input.enemyIsBoss = "None" + build.configTab:BuildModList() runCallback("OnFrame") - + -- Manual stages + assert.True(build.calcsTab.mainEnv.enemyDB:Sum("BASE", nil, "FireResist") < 0) + + srcInstance.skillPart = 2 + build.modFlag = true + build.buildFlag = true + runCallback("OnFrame") + -- Automatic maximum sustainable stages assert.True(build.calcsTab.mainEnv.enemyDB:Sum("BASE", nil, "FireResist") < 0) end)