public void GetRunTimesFirstReturnTimeifMultiCall() { var target = new RealTimeSchedule(); var startTimes = new List <DateTime> { new DateTime(2014, 10, 10, 10, 55, 49), new DateTime(2014, 10, 10, 10, 56, 49), new DateTime(2014, 10, 10, 10, 59, 50), new DateTime(2014, 10, 10, 11, 01, 50) }; var endTimes = new List <DateTime> { new DateTime(2014, 10, 10, 10, 56, 49), new DateTime(2014, 10, 10, 10, 57, 49), new DateTime(2014, 10, 10, 11, 00, 50), new DateTime(2014, 10, 10, 11, 02, 50) }; for (int i = 0; i < 4; i++) { List <DateTime> expected; var actual = target.GetRunTimes(startTimes[i], endTimes[i]); if (i == 0) { expected = new List <DateTime> { new DateTime(2014, 10, 10, 10, 56, 49) }; Assert.AreEqual(expected[0], actual[0]); } else { expected = new List <DateTime>(); Assert.AreEqual(expected.Count, actual.Count); } } }