public void EventsService_LoadTable_Adjusted_Success()
        {
            EventsService es = new EventsService();

            var sw = new Stopwatch();
            sw.Start();
            es.LoadTable(true);
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.IsNotNull(es.EventTimeTable);
            Assert.IsTrue(es.EventTimeTable.WorldEvents.Count > 0);
        }
        public void EventsService_LoadTable_Standard_InvalidFile()
        {
            File.WriteAllText(MegaserverEventTimeTable.StandardFilename, "invalid contents");

            EventsService es = new EventsService();

            var sw = new Stopwatch();
            sw.Start();
            es.LoadTable(false);
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.IsNotNull(es.EventTimeTable);
            Assert.IsTrue(es.EventTimeTable.WorldEvents.Count > 0);
        }
        public void EventsService_LoadTable_Adjusted_MissingFile()
        {
            File.Delete(MegaserverEventTimeTable.AdjustedFilename);

            EventsService es = new EventsService();

            var sw = new Stopwatch();
            sw.Start();
            es.LoadTable(true);
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.IsNotNull(es.EventTimeTable);
            Assert.IsTrue(es.EventTimeTable.WorldEvents.Count > 0);
        }
        public void EventsService_GetState_WorldEvent_Blank_Inactive()
        {
            EventsService es = new EventsService();
            es.LoadTable(false);

            var sw = new Stopwatch();
            sw.Start();
            var state = es.GetState(new WorldEvent());
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.AreEqual(EventState.Inactive, state);
        }
        public void EventsService_GetState_WorldEvent_Null_Invalid()
        {
            EventsService es = new EventsService();
            es.LoadTable(false);

            var sw = new Stopwatch();
            sw.Start();
            var state = es.GetState(null);
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.AreEqual(EventState.Unknown, state);
        }
        public void EventsService_GetState_WorldEvent_Success_Inactive()
        {
            var timeMock = new Mock<ITimeProvider>();

            EventsService es = new EventsService(null, timeMock.Object);
            es.LoadTable(false);

            var validEvent = es.EventTimeTable.WorldEvents[0];
            var activeTime = DateTimeOffset.UtcNow.Date.Add(validEvent.ActiveTimes[0].Time).AddMinutes(-10);
            timeMock.Setup(t => t.CurrentTime).Returns(activeTime);

            var sw = new Stopwatch();
            sw.Start();
            var state = es.GetState(validEvent);
            sw.Stop();
            Console.WriteLine("{0}ms", sw.ElapsedMilliseconds);

            Assert.AreEqual(EventState.Inactive, state);
        }