public void OpeningTimes_Returns_List_Of_Opening_Times() { var clock = new StaticClock(DayOfWeek.Saturday, 12, 05); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION } }; var openingTimes = service.OpeningTimes; Assert.AreEqual(7, openingTimes.Count); Assert.AreEqual("9:30am - 5:00pm", openingTimes[DayOfWeek.Monday]); Assert.AreEqual("9:30am - 5:00pm", openingTimes[DayOfWeek.Tuesday]); Assert.AreEqual("9:30am - 5:00pm", openingTimes[DayOfWeek.Wednesday]); Assert.AreEqual("9:30am - 5:00pm", openingTimes[DayOfWeek.Thursday]); Assert.AreEqual("9:30am - 5:00pm", openingTimes[DayOfWeek.Friday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Saturday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Sunday]); }
public void IsOpen_Returns_False_When_Service_Has_No_Rota_Sessions() { var clock = new StaticClock(DayOfWeek.Sunday, 16, 2); var service = new ServiceViewModel(clock) { OpenAllHours = false, }; Assert.IsFalse(service.IsOpen); }
public void ServiceOpeningTimesMessage_Returns_Next_Day_Closed_Today() { var clock = new StaticClock(DayOfWeek.Wednesday, 12, 30); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { TUESDAY_SESSION } }; Assert.AreEqual("Opens Tuesday: 09:30 until 17:00", service.ServiceOpeningTimesMessage); }
public void OpeningTimes_Multiple_Rota_Sessions_Time_After_All_Returns_Closed() { var clock = new StaticClock(DayOfWeek.Thursday, 18, 00); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { THURSDAY_MORNING_SESSION, THURSDAY_AFTERNOON_SESSION }, }; Assert.AreEqual("Closed", service.CurrentStatus); }
public void ServiceOpeningTimesMessage_Returns_First_Session_Of_Two_On_Same_Day_Closed_Today() { var clock = new StaticClock(DayOfWeek.Friday, 12, 30); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { THURSDAY_AFTERNOON_SESSION, THURSDAY_MORNING_SESSION } }; Assert.AreEqual("Opens Thursday: 08:30 until 11:00", service.ServiceOpeningTimesMessage); }
public void OpeningTimes_Multiple_Rota_Sessions_Time_InBetween_Afternoon_Session_Returns_Afternoon_Opening() { var clock = new StaticClock(DayOfWeek.Thursday, 15, 00); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { THURSDAY_MORNING_SESSION, THURSDAY_AFTERNOON_SESSION }, }; Assert.AreEqual("Open today: 13:00 until 18:00", service.CurrentStatus); Assert.AreEqual("Open today: 13:00 until 18:00", service.ServiceOpeningTimesMessage); }
public void OpeningTimes_Multiple_Rota_Sessions_Time_At_End_Of_First_Session_Returns_Morning() { var clock = new StaticClock(DayOfWeek.Thursday, 10, 59); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { THURSDAY_MORNING_SESSION, THURSDAY_AFTERNOON_SESSION }, }; Assert.AreEqual("Open today: 08:30 until 11:00", service.CurrentStatus); Assert.AreEqual("Open today: 08:30 until 11:00", service.ServiceOpeningTimesMessage); }
public void CurrentStatus_Returns_Open_Today_Midnight() { var clock = new StaticClock(DayOfWeek.Saturday, 6, 40); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, new ServiceCareItemRotaSession() { StartDayOfWeek = NHS111.Models.Models.Web.FromExternalServices.DayOfWeek.Saturday, EndDayOfWeek = NHS111.Models.Models.Web.FromExternalServices.DayOfWeek.Saturday, StartTime = new TimeOfDay() { Hours = 0, Minutes = 0 }, EndTime = new TimeOfDay() { Hours = 7, Minutes = 30 } }, new ServiceCareItemRotaSession() { StartDayOfWeek = NHS111.Models.Models.Web.FromExternalServices.DayOfWeek.Saturday, EndDayOfWeek = NHS111.Models.Models.Web.FromExternalServices.DayOfWeek.Saturday, StartTime = new TimeOfDay() { Hours = 22, Minutes = 0 }, EndTime = new TimeOfDay() { Hours = 23, Minutes = 59 } }, SUNDAY_SESSION } }; Assert.IsTrue(service.IsOpen); Assert.AreEqual("Open today: 00:00 until 07:30", service.CurrentStatus); Assert.AreEqual("Open today: 00:00 until 07:30", service.ServiceOpeningTimesMessage); }
public void CurrentStatus_Returns_Closed_When_No_Rota_Session_For_Today() { var clock = new StaticClock(DayOfWeek.Saturday, 12, 05); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION } }; Assert.AreEqual("Closed", service.CurrentStatus); }
public void IsOpen_Returns_False_When_Service_Has_No_Rota_Session_For_Today() { var clock = new StaticClock(DayOfWeek.Saturday, 12, 35); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION } }; Assert.IsFalse(service.IsOpen); }
public void ServiceOpeningTimesMessage_Returns_Correct_Open_Day_After_Tomorrow_Times() { var clock = new StaticClock(DayOfWeek.Saturday, 22, 35); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, } }; Assert.AreEqual("Opens Monday: 09:30 until 17:00", service.ServiceOpeningTimesMessage); }
public void ServiceOpeningTimesMessage_Returns_Tomorrow_Closed_Today() { var clock = new StaticClock(DayOfWeek.Wednesday, 12, 30); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, SATURDAY_SESSION, SUNDAY_SESSION } }; Assert.AreEqual("Opens tomorrow: 09:30 until 17:00", service.ServiceOpeningTimesMessage); }
public void OpeningTimes_Null_Rota_Sessions_Returns_Closed() { var clock = new StaticClock(DayOfWeek.Saturday, 12, 05); var service = new ServiceViewModel(clock) { OpenAllHours = false }; var openingTimes = service.OpeningTimes; Assert.AreEqual(7, openingTimes.Count); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Monday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Tuesday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Wednesday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Thursday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Friday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Saturday]); Assert.AreEqual("Closed", openingTimes[DayOfWeek.Sunday]); }
public void CurrentStatus_Returns_Closed_When_Time_After_Todays_Closing() { var clock = new StaticClock(DayOfWeek.Wednesday, 19, 05); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, SATURDAY_SESSION, SUNDAY_SESSION } }; Assert.AreEqual("Closed", service.CurrentStatus); }
public void OpeningTimes_For_Open_All_Hours_Returns_Empty_List() { var clock = new StaticClock(DayOfWeek.Saturday, 12, 05); var service = new ServiceViewModel(clock) { OpenAllHours = true, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION } }; var openingTimes = service.OpeningTimes; Assert.AreEqual(0, openingTimes.Count); }
public void IsOpen_Returns_False_When_Service_Is_Closed() { var clock = new StaticClock(DayOfWeek.Monday, 8, 2); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, SATURDAY_SESSION, SUNDAY_SESSION } }; Assert.IsFalse(service.IsOpen); }
public void CurrentStatus_Returns_Correct_Open_Today_Times_When_Time_Before_Todays_Opening() { var clock = new StaticClock(DayOfWeek.Thursday, 7, 30); var service = new ServiceViewModel(clock) { OpenAllHours = false, RotaSessions = new[] { MONDAY_SESSION, TUESDAY_SESSION, WEDNESDAY_SESSION, THURSDAY_SESSION, FRIDAY_SESSION, SATURDAY_SESSION, SUNDAY_SESSION } }; Assert.AreEqual("Opens today: 09:30 until 17:00", service.CurrentStatus); Assert.AreEqual("Opens today: 09:30 until 17:00", service.ServiceOpeningTimesMessage); }