@@ -100,6 +100,38 @@ describe("TestAttacks", function()
100100 assert .True (build .calcsTab .mainEnv .enemyDB :Sum (" BASE" , nil , " FireResist" ) < 0 )
101101 end )
102102
103+ it (" Defaults Blade Blast to the skill's blade cap" , function ()
104+ build .skillsTab :PasteSocketGroup (" Blade Blast 20/0 1\n " )
105+ runCallback (" OnFrame" )
106+
107+ local mainSocketGroup = build .skillsTab .socketGroupList [build .mainSocketGroup ]
108+ local activeSkill = mainSocketGroup .displaySkillList [mainSocketGroup .mainActiveSkill ]
109+ local calcsSkillSelectControls = build .calcsTab .sectionList [1 ].controls
110+ build :RefreshSkillSelectControls (calcsSkillSelectControls , build .calcsTab .input .skill_number , " Calcs" )
111+
112+ assert .are .equals (" 50" , build .controls .mainSkillStageCount .buf )
113+ assert .are .equals (" 50" , calcsSkillSelectControls .mainSkillStageCount .buf )
114+ assert .are .equals (50 , activeSkill .skillData .stagesMax )
115+ assert .are .equals (50 , activeSkill .skillModList :Sum (" BASE" , activeSkill .skillCfg , " Multiplier:BladeBlastStage" ))
116+ assert .are .equals (49 , activeSkill .skillModList :Sum (" BASE" , activeSkill .skillCfg , " Multiplier:BladeBlastStageAfterFirst" ))
117+
118+ local cappedAverageDamage = build .calcsTab .mainOutput .AverageDamage
119+ local cappedTotalDPS = build .calcsTab .mainOutput .TotalDPS
120+ local cappedCombinedDPS = build .calcsTab .mainOutput .CombinedDPS
121+ activeSkill .activeEffect .srcInstance .skillStageCount = 51
122+ build .modFlag = true
123+ build .buildFlag = true
124+ runCallback (" OnFrame" )
125+
126+ activeSkill = mainSocketGroup .displaySkillList [mainSocketGroup .mainActiveSkill ]
127+ assert .are .equals (" 51" , build .controls .mainSkillStageCount .buf )
128+ assert .are .equals (50 , activeSkill .skillModList :Sum (" BASE" , activeSkill .skillCfg , " Multiplier:BladeBlastStage" ))
129+ assert .are .equals (49 , activeSkill .skillModList :Sum (" BASE" , activeSkill .skillCfg , " Multiplier:BladeBlastStageAfterFirst" ))
130+ assert .are .equals (cappedAverageDamage , build .calcsTab .mainOutput .AverageDamage )
131+ assert .are .equals (cappedTotalDPS , build .calcsTab .mainOutput .TotalDPS )
132+ assert .are .equals (cappedCombinedDPS , build .calcsTab .mainOutput .CombinedDPS )
133+ end )
134+
103135 it (" Test Adrenaline affecting blight max stage count" , function ()
104136 build .skillsTab :PasteSocketGroup (" Blight 20/0 1\n " )
105137 runCallback (" OnFrame" )
0 commit comments