Ejemplo n.º 1
0
        public void ValidShuffleTest()
        {
            var daymock = new Mock <IDateTime>();

            daymock.Setup(day => day.Now).Returns(DateTime.Now);
            DaysShuffler shuffler = new DaysShuffler(appSettings, daymock.Object);

            int[] shuffled = shuffler.ShuffleDays();
            //without duplication
            Assert.Equal(shuffled.Length, shuffled.Distinct().Count());

            Assert.Equal(1, shuffled.Min());
            Assert.Equal(_days, shuffled.Max());
        }
Ejemplo n.º 2
0
        public void ShuffleConsistenceTest()
        {
            var daymock = new Mock <IDateTime>();

            daymock.Setup(day => day.Now).Returns(new DateTime(2019, 01, 25));
            DaysShuffler shuffler = new DaysShuffler(appSettings, daymock.Object);

            int[] shuffled = shuffler.ShuffleDays();
            //System.Index exists : must be written explicitly.
            Assert.Equal(shuffler.ShuffleDays(), shuffler.ShuffleDays());

            //make sure that not shuffled. very rarely not succeeded.
            Assert.NotEqual(shuffled, Enumerable.Range(1, _days).ToArray());

            //Different years, different days.
            var daymock2 = new Mock <IDateTime>();

            daymock2.Setup(day => day.Now).Returns(new DateTime(2020, 12, 12));
            DaysShuffler shuffler2 = new DaysShuffler(appSettings, daymock2.Object);

            int[] shuffled2 = shuffler2.ShuffleDays();
            Assert.NotNull(shuffled2);
            Assert.NotEqual(shuffled, shuffled2);
        }