Ejemplo n.º 1
0
        public void HolidaysMatch()
        {
            var holiday = new AbstractApiHolidays("Timeout Day", "", "AU", "", "AU", "Australia - New South Wales",
                                                  "Local holiday", DateTime.Today.ToString("MM/dd/yyyy"), DateTime.Today.Year.ToString(),
                                                  DateTime.Today.Month.ToString(), DateTime.Today.Day.ToString(), DateTime.Today.DayOfWeek.ToString());

            Assert.True(Holidays.ValidateHolidays(new List <AbstractApiHolidays> {
                holiday
            },
                                                  new List <string> {
                "National", "Local"
            }, new List <string> {
                "Australia", "New South Wales"
            }, false,
                                                  true).Count > 0);
        }
Ejemplo n.º 2
0
        public void RolloverWithHoliday()
        {
            var start = DateTime.ParseExact(DateTime.Today.ToString("yyyy-MM-dd") + " 00:01:00", "yyyy-MM-dd H:mm:ss",
                                            CultureInfo.InvariantCulture, DateTimeStyles.None);
            var end = DateTime.ParseExact(start.AddHours(1).ToString("yyyy-MM-dd H:mm:ss"), "yyyy-MM-dd H:mm:ss",
                                          CultureInfo.InvariantCulture, DateTimeStyles.None);

            var app = Some.Reactor(start.ToString("H:mm:ss"), end.ToString("H:mm:ss"), 1, 59);

            app.Config.TestOverrideTime    = start;
            app.Config.UseTestOverrideTime = true;
            app.Attach(TestAppHost.Instance);

            for (var i = 0; i < 169; i++)
            {
                if (i > 0)
                {
                    app.Config.TestOverrideTime = app.Config.TestOverrideTime.AddHours(1);

                    if (i % 24 == 0)
                    {
                        start = start.AddDays(1);
                        end   = start.AddHours(1);
                    }
                }

                var holiday = new AbstractApiHolidays("Threshold Day", "", "AU", "", "AU",
                                                      "Australia - New South Wales",
                                                      "Local holiday", start.ToString("MM/dd/yyyy"), start.Year.ToString(),
                                                      start.Month.ToString(), start.Day.ToString(), start.DayOfWeek.ToString());
                app.Config.Holidays = new List <AbstractApiHolidays> {
                    holiday
                };

                app.UtcRollover(app.Config.TestOverrideTime.ToUniversalTime(), true);
                var showTime = app.GetShowtime();
                _testOutputHelper.WriteLine("Time: {0:F}, Next ShowTime: {1:F}, Matches {2}",
                                            app.Config.TestOverrideTime.ToUniversalTime(), showTime.Start.ToUniversalTime(),
                                            showTime.Start.ToString("F") == start.AddDays(1).ToUniversalTime().ToString("F"));

                Assert.True(showTime.Start.ToString("F") == start.AddDays(1).ToUniversalTime().ToString("F"));
                Assert.True(showTime.End.ToString("F") == end.AddDays(1).ToUniversalTime().ToString("F"));
            }
        }