public void Should_Calculate_Previous_Resistance_Amount_When_Scenario_Is_Not_Simple() { //TODO: Refine/base expectations dynamically not statically //ARRANGE var sut = new ResistanceBandService(_repo.Object); //ACT var result = sut.CalculatePreviousAvailableResistanceAmount(35, 5, 10, false); //ASSERT Assert.AreEqual(2, result.Count); Assert.AreEqual(26, result.Sum(band => band.MaxResistanceAmount)); Assert.IsTrue(result.Count(band => band.Color == "Purple") == 1); }
public void Should_Calculate_Previous_Resistance_Amount_When_Band_Resistances_Are_Doubled() { //TODO: Refine/base expectations dynamically not statically //ARRANGE var sut = new ResistanceBandService(_repo.Object); //ACT var result = sut.CalculatePreviousAvailableResistanceAmount(120, 20, 25, true); //ASSERT Assert.AreEqual(3, result.Count); Assert.AreEqual(96, result.Sum(band => band.MaxResistanceAmount) * 2); Assert.IsTrue( result.Count(band => band.Color == "Onyx") == 1 && result.Count(band => band.Color == "Green") == 1 && result.Count(band => band.Color == "Yellow") == 1); }
public void Should_Calculate_Previous_Resistance_Amount_When_Scenario_Is_Complex() { //TODO: Refine/base expectations dynamically not statically //ARRANGE var sut = new ResistanceBandService(_repo.Object); //ACT var result = sut.CalculatePreviousAvailableResistanceAmount(80, 20, 25, false); //ASSERT Assert.AreEqual(4, result.Count); Assert.AreEqual(56, result.Sum(band => band.MaxResistanceAmount)); Assert.IsTrue( result.Count(band => band.Color == "Onyx") == 1 && result.Count(band => band.Color == "Yellow") == 1 && result.Count(band => band.Color == "Green") == 1 && result.Count(band => band.Color == "Red") == 1); }