public void Resolve_Null_Throws()
        {
            var    sut    = new ScheduleApplicabilityResolver(new ScheduleSettings());
            Action action = () => sut.Resolve(null);

            action.Should().ThrowExactly <ArgumentNullException>();
        }
        public void Resolve_ValidSchedules_InRange_IsExpected(string scheduleName, string time)
        {
            var sut    = new ScheduleApplicabilityResolver(Schedules);
            var result = sut.Resolve(new ScheduleQuery {
                ScheduleName = scheduleName, Time = TimeSpan.Parse(time)
            });

            result.Should().BeTrue();
        }
        public void Resolve_EmptySchedules_IsExpected(string scheduleName, string time)
        {
            var sut = new ScheduleApplicabilityResolver(new ScheduleSettings());

            TimeSpan.TryParse(time, out var timeSpan);
            var result = sut.Resolve(new ScheduleQuery {
                ScheduleName = scheduleName, Time = timeSpan
            });

            result.Should().BeFalse();
        }