public void Test_SubtractTime_Invalid_Execution() { int years2Sub = 2; int months2Sub = 3; int days2Sub = 9; /*Invalid subtraction(yearsDiff<=0)*/ DateTime date1 = new DateTime(2019, 1, 1); DateTime date2 = new DateTime(2019, 7, 10); DateIntervalManager manager = new DateIntervalManager(date1, date2); Assert.ThrowsException <ArgumentOutOfRangeException>(() => manager.SubtractTime(years2Sub, months2Sub, days2Sub)); /*Invalid subtraction(daysDiff<0)*/ date1.AddYears(-3); months2Sub = 7; days2Sub = 10; Assert.ThrowsException <ArgumentOutOfRangeException>(() => manager.SubtractTime(years2Sub, months2Sub, days2Sub)); /*Invalid subtraction(monthsDiff<0)*/ date1.AddYears(3); months2Sub = 7; Assert.ThrowsException <ArgumentOutOfRangeException>(() => manager.SubtractTime(years2Sub, months2Sub, days2Sub)); }
public void Test_SubtractTime_Normal_Execution() { int years2Sub = 2; int months2Sub = 3; int days2Sub = 9; /*Valid dates for subtraction*/ DateTime date1 = new DateTime(2016, 1, 1); DateTime date2 = new DateTime(2019, 7, 10); DateIntervalManager manager = new DateIntervalManager(date1, date2); manager.SubtractTime(years2Sub, months2Sub, days2Sub); Assert.AreEqual(1, manager.Years, "Expected and actual years differ."); Assert.AreEqual(3, manager.Months, "Expected and actual months differ."); Assert.AreEqual(0, manager.Days, "Expected and actual days differ."); }