public void TestBlueDistinctionPlusAwardProcessUpdate() { //Arrange BlueDistinctionPlusAward award = new BlueDistinctionPlusAward(10); //Act award.ProcessUpdate(); //Assert Assert.AreEqual(award.ExpiresIn, 10); Assert.AreEqual(award.Quality, 80); Assert.AreEqual(award.ToString(), "Award Name: Blue Distinction Plus, Expires In: 10, Quality: 80"); }
public void Algorithm_ConstantQuality() { var algo = new ConstantQualityAlgorithm(); IAward award = new BlueDistinctionPlusAward(TimeSpan.FromDays(0)); var originalQuality = award.Quality; for (var i = 0; i < 50; i++) { award = algo.Run(award); Assert.AreEqual(originalQuality, award.Quality, $"Quality changed from '{originalQuality}' to '{award.Quality}' on iteration '{i}'"); } }
public void Award_BlueDistinctionPlus() { IAward award = new BlueDistinctionPlusAward(TimeSpan.FromDays(1)); var algo = award.UpdateAlgorithm; Assert.IsFalse(award.IsExpired); Assert.IsTrue(award.IsNotExpired); Assert.AreEqual(80, award.Quality); award.IncrementDay(); award = algo.Run(award); Assert.AreEqual(80, award.Quality); Assert.IsFalse(award.IsExpired); Assert.IsTrue(award.IsNotExpired); award.IncrementDay(); award = algo.Run(award); Assert.AreEqual(80, award.Quality); Assert.IsTrue(award.IsExpired); Assert.IsFalse(award.IsNotExpired); }