public void GetResult_WhenThereIsABowShieldBonusModAndOverLimitPercentBonus_ShouldReturnBaseValueTimesBowShieldBonusPlusMaxPercentBonus( [Frozen] double baseValue, MaxHpModCalculator maxHpModCalculator) { maxHpModCalculator.AddMod("PERCENT_BONUS", 41); maxHpModCalculator.AddMod("BOW_SHIELD_BONUS", 20); maxHpModCalculator.GetResult().Should().Be(baseValue * 1.6); }
public void GetResult_WhenThereAreMultipleBowShieldBonusMod_ShouldReturnBaseValueTimesMaxBowShieldBonus( [Frozen] double baseValue, MaxHpModCalculator maxHpModCalculator) { maxHpModCalculator.AddMod("BOW_SHIELD_BONUS", 10); maxHpModCalculator.AddMod("BOW_SHIELD_BONUS", 20); maxHpModCalculator.GetResult().Should().Be(baseValue * 1.2); }
public void GetResult_WhenThereAreMultiplePercentBonusMod_ShouldReturnBaseValueTimesSumOfPercentBonus( [Frozen] double baseValue, MaxHpModCalculator maxHpModCalculator) { maxHpModCalculator.AddMod("PERCENT_BONUS", 10); maxHpModCalculator.AddMod("PERCENT_BONUS", 25); maxHpModCalculator.GetResult().Should().Be(baseValue * 1.35); }
public void GetResult_WhenThereIsAPercentBonusMod_ShouldReturnBaseValueTimesPercentBonus( [Frozen] double baseValue, MaxHpModCalculator maxHpModCalculator) { maxHpModCalculator.AddMod("PERCENT_BONUS", 20); maxHpModCalculator.GetResult().Should().Be(baseValue * 1.2); }
public void GetResult_WhenTherePercentBonusModExceeds140_ShouldCapAt140( [Frozen] double baseValue, MaxHpModCalculator maxHpModCalculator) { maxHpModCalculator.AddMod("PERCENT_BONUS", 41); maxHpModCalculator.GetResult().Should().Be(baseValue * 1.4); }