예제 #1
0
        public void InputIsSunday_DateReturnedIsMonday()
        {
            var      pmDate         = new PaymentDates();
            DateTime sampleDate     = DateTime.Parse("17/6/2011"); //thứ 6
            DateTime rsDateIsMonday = pmDate.CalculateFuturePaymentDate(sampleDate);

            Assert.AreEqual(DayOfWeek.Monday, rsDateIsMonday.DayOfWeek);
        }
예제 #2
0
        public void CalculateFuturePaymentDate_InputCausesSundayDate_DateReturnedIsMonday()
        {
            //arrange phase
            var      pd         = new PaymentDates();
            DateTime sampleDate = DateTime.Parse("3/4/2020");

            //act phase
            DateTime resultDateWhichShouldBeMonday = pd.CalculateFuturePaymentDate(sampleDate);

            //assert phase
            Assert.AreEqual(DayOfWeek.Monday, resultDateWhichShouldBeMonday.DayOfWeek);
        }
예제 #3
0
        public void ValidInput_DateReturned30DaysInFuture()
        {
            var pmDate = new PaymentDates();
            var arrayDaysOfWeekTest = new Dictionary <string, string> {
                { "Monday", "13/6/2011" }, { "Tuesday", "14/6/2011" }, { "Wednesday", "15/6/2011" }, { "Thursday", "16/6/2011" }, { "Friday", "17/6/2011" }, { "Saturday", "18/6/2011" }, { "Sunday", "19/6/2011" }
            };
            DateTime sampleDate        = DateTime.Parse(arrayDaysOfWeekTest["Monday"]);
            var      tempDate          = sampleDate.AddDays(30);
            DateTime rsDate30DaysLater = pmDate.CalculateFuturePaymentDate(sampleDate);

            Assert.AreEqual(sampleDate.AddDays(30), rsDate30DaysLater);
        }
예제 #4
0
        public void CalculateFuturePaymentDate_InputCausesSaturdayOrSundayDate_DateReturned30DaysInFuture()
        {
            //arrange phase
            var      pd         = new PaymentDates();
            DateTime sampleDate = DateTime.Parse("30/4/2020");

            //act phase
            DateTime resultDateWhichShouldBe30DayLater = pd.CalculateFuturePaymentDate(sampleDate);

            DayOfWeek date   = sampleDate.AddDays(30).DayOfWeek;
            int       addDay = 0;

            if (date.Equals(DayOfWeek.Saturday))
            {
                addDay += 2;
            }
            else if (date.Equals(DayOfWeek.Sunday))
            {
                addDay++;
            }
            //assert phase
            Assert.AreEqual(sampleDate.AddDays(30 + addDay), resultDateWhichShouldBe30DayLater);
        }