public void Calculate_WithPreviousUses_UsesIncreasedBasePower() { // Arrange var random = new Mock <IRandom>(); random .Setup(m => m.Next(80, 101)) .Returns(100); var damage = TestHelpers.CreateDamageAction(); var user = TestHelpers.CreateBasicCharacter(attack: 6); var otherCharacters = new[] { TestHelpers.CreateBasicCharacter(defence: 5), }; var actionHistory = new Mock <IActionHistory>(); actionHistory .Setup(m => m.GetMoveActionConsecutiveSuccessCount(damage, user)) .Returns(1); var calculator = new BasePowerIncreasesLinearlyWithUsesDamageCalculator(10, 5, random.Object, actionHistory.Object); // Act var calculation = calculator.Calculate(user, damage, otherCharacters).Single(); // Assert Assert.Multiple(() => { Assert.That(calculation.Success, Is.True); Assert.That(calculation.Amount, Is.EqualTo(15)); }); }
public void Ctor_NullActionHistory_Throws() { Assert.Throws <ArgumentNullException>(() => { _ = new BasePowerIncreasesLinearlyWithUsesDamageCalculator( 0, 0, new Mock <IRandom>().Object, null); }); }