public static StatusService Get() { var timeProvider = new TimeProvider(); var statusDateTime = new StatusDateTime(timeProvider); var randomMinuteGenerator = new RandomMinuteGenerator(timeProvider); var statusChangerService = new StatusService(statusDateTime, randomMinuteGenerator); return(statusChangerService); }
public void StatusIsSetOnGoneHomeOnTheWeekendTest() { var statusDateTime = new StatusDateTime(TestUtils.MockTimeProvider(new DateTime(2017, 3, 25, 12, 20, 0))); var result1 = statusDateTime.IsInGoneHomeTime(new DateTime(2017, 3, 25, 15, 33, 0)); var result2 = statusDateTime.IsInGoneHomeTime(new DateTime(2017, 3, 25, 12, 20, 0)); var result3 = statusDateTime.IsInGoneHomeTime(new DateTime(2017, 3, 25, 9, 30, 0)); var result4 = statusDateTime.IsInLunchTime(new DateTime(2017, 3, 25, 9, 30, 0)); var result5 = statusDateTime.IsInWorkingHoursTime(new DateTime(2017, 3, 25, 9, 30, 0)); Assert.IsTrue(result1); Assert.IsTrue(result2); Assert.IsTrue(result3); Assert.IsFalse(result4); Assert.IsFalse(result5); }