public void GetDistinctPreviousMonths_ReturnTheMonthCount_AsSpecifiedByMonthsRequiredParam()
        {
            var dateTime        = new DateTime(2013, 8, 4);
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(dateTime);

            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> result = sut.GetDistinctPreviousMonths(dateTime, 10);

            Assert.AreEqual(10, result.Count);
        }
        public void GetDistinctPreviousMonths_SetMonthsRequiredParamTo1_IfAZeroValueIsGiven()
        {
            var dateTime        = new DateTime(2013, 8, 4);
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(dateTime);

            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> result = sut.GetDistinctPreviousMonths(dateTime, 0);

            Assert.AreEqual(1, result.Count);
        }
        public void GetDistinctPreviousMonths_FetchFiveMonthsPrevious_FromFebruary()
        {
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(() => new DateTime(2013, 2, 1));
            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> months = sut.GetDistinctPreviousMonths(new DateTime(2013, 2, 1), 5);

            string[]             expected = { "January", "December", "November", "October", "September" };
            IEnumerable <string> actual   = months.Select(x => x.ToLongDateString().Split(' ').ElementAt(1));

            CollectionAssert.AreEqual(expected, actual);
        }
        public void GetDistinctPreviousMonths_SetDateParamToCurrentTime_IfItIsGreaterThanCurrentTime()
        {
            var dateTime        = new DateTime(2014, 8, 4);
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(() => new DateTime(2013, 8, 4));

            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> result = sut.GetDistinctPreviousMonths(dateTime, 5);

            Assert.AreEqual(7, result[0].Month);
            Assert.AreEqual(2013, result[0].Year);
        }
        public void GetDistinctMonths_FetchFiveMonthsPrevious_WithOverlappingYears()
        {
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(() => new DateTime(2013, 12, 1));
            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> months = sut.GetDistinctPreviousMonths(new DateTime(2013, 3, 1), 5);

            int[]             expected = { 2013, 2013, 2012, 2012, 2012 };
            IEnumerable <int> actual   = months.Select(x => x.Year);

            CollectionAssert.AreEqual(expected, actual);
        }
        public void GetDistinctPreviousMonths_FetchFiveMonthsPrevious_FromAugust()
        {
            var fakeCurrentTime = new Mock <ICurrentDateTime>();

            fakeCurrentTime.Setup(x => x.GetCurrentTime()).Returns(() => new DateTime(2013, 8, 1));
            var sut = new DistinctMonthHelper(fakeCurrentTime.Object);

            List <DateTime> months = sut.GetDistinctPreviousMonths(new DateTime(2013, 8, 1), 5);

            string[]             expected = { "July", "June", "May", "April", "March" };
            IEnumerable <string> actual   = months.Select(x => x.ToLongDateString().Split(' ').ElementAt(1));

            CollectionAssert.AreEqual(expected, actual);
        }
예제 #7
0
 public void Foo()
 {
     IDistinctMonthHelper monthHelper   = new DistinctMonthHelper(new CurrentTimeHelper());
     IArchiveMapper       archiveMapper = new ArchiveMapper();
     var sut = new Archiver(monthHelper, archiveMapper);
 }