示例#1
0
            public void ShouldCalculateIntervallAtSummerToWinterChange()
            {
                var expected = Duration.FromHours(22) + Duration.FromMinutes(30);
                var settings = new Settings
                {
                    TimeZone = "Europe/Vienna",
                    From     = new LocalTime(21, 00),
                    Till     = new LocalTime(23, 00)
                };
                var time  = new LocalDateTime(2017, 10, 28, 23, 30);
                var clock = CreateFakeClock(settings, time);

                var settingsManager = An.SettingsManager();

                settingsManager.Settings = settings;

                var calculator = new IntervallCalculator(clock, settingsManager);
                var intervall  = calculator.CalculateDurationTillIntervall();

                Assert.That(intervall, Is.EqualTo(expected));
            }
示例#2
0
            public void ShouldCalculateIntervallWhenTillIsAfterMidnignt(int currentHour, int currentMinute, int hours, int minutes)
            {
                var expected = Duration.FromHours(hours) + Duration.FromMinutes(minutes);
                var settings = new Settings
                {
                    TimeZone = "Europe/Vienna",
                    From     = new LocalTime(23, 00),
                    Till     = new LocalTime(02, 00)
                };
                var time  = new LocalDateTime(2017, 06, 23, currentHour, currentMinute);
                var clock = CreateFakeClock(settings, time);

                var settingsManager = An.SettingsManager();

                settingsManager.Settings = settings;

                var calculator = new IntervallCalculator(clock, settingsManager);
                var intervall  = calculator.CalculateDurationTillIntervall();

                Assert.That(intervall, Is.EqualTo(expected));
            }