Beispiel #1
0
        public void TestBlueFirstAwardProcessUpdateWithQualityUpperLimit()
        {
            //Arrange
            BlueFirstAward award = new BlueFirstAward(20, 50);

            //Act
            award.ProcessUpdate();

            //Assert
            Assert.AreEqual(award.ExpiresIn, 19);
            Assert.AreEqual(award.Quality, 50);
            Assert.AreEqual(award.ToString(), "Award Name: Blue First, Expires In: 19, Quality: 50");
        }
Beispiel #2
0
        public void TestBlueFirstAwardProcessUpdate()
        {
            //Arrange
            BlueFirstAward award = new BlueFirstAward(15, 10);

            //Act
            award.ProcessUpdate();

            //Assert
            Assert.AreEqual(award.ExpiresIn, 14);
            Assert.AreEqual(award.Quality, 11);
            Assert.AreEqual(award.ToString(), "Award Name: Blue First, Expires In: 14, Quality: 11");
        }
        public void Award_BlueFirstAward()
        {
            IAward award = new BlueFirstAward(10, TimeSpan.FromDays(1));
            var    algo  = award.UpdateAlgorithm;

            Assert.IsFalse(award.IsExpired);
            Assert.IsTrue(award.IsNotExpired);
            Assert.AreEqual(10, award.Quality);

            award.IncrementDay();
            award = algo.Run(award);
            Assert.AreEqual(11, award.Quality);
            Assert.IsFalse(award.IsExpired);
            Assert.IsTrue(award.IsNotExpired);

            award.IncrementDay();
            award = algo.Run(award);
            Assert.AreEqual(12, award.Quality);
            Assert.IsTrue(award.IsExpired);
            Assert.IsFalse(award.IsNotExpired);
        }