コード例 #1
0
        public void IsOKTest_in_MonitorLimit_Time_And_MarketDataTest()
        {
            // MarketDataDelayed이므로 Not OK인 시나리오
            {
                DateTime dtStart = DateTime.Now.AddSeconds(-2);
                DateTime dtEnd = DateTime.Now.AddSeconds(-1);
                MonitorLimit_Time_And_MarketData target = new MonitorLimit_Time_And_MarketData(dtStart, dtEnd);
                bool actual = target.IsOK();
                Assert.AreEqual(false, actual);
            }

            MarketDelayManager.Ins().SetFutureOptionLastUpdatedTime(DateTime.Now);

            // 모니터링 끝 시간이 지났기 때문에 OK가 아닌 시나리오
            {
                DateTime dtStart = DateTime.Now.AddSeconds(-2);
                DateTime dtEnd = DateTime.Now.AddSeconds(-1);
                MonitorLimit_Time_And_MarketData target = new MonitorLimit_Time_And_MarketData(dtStart, dtEnd);
                bool actual = target.IsOK();
                Assert.AreEqual(false, actual);
            }

            // 모니터링 시작 시간이 아직 안되었기 때문에 OK가 아닌 시나리오
            {
                DateTime dtStart = DateTime.Now.AddSeconds(2);
                DateTime dtEnd = DateTime.Now.AddSeconds(3);
                MonitorLimit_Time_And_MarketData target = new MonitorLimit_Time_And_MarketData(dtStart, dtEnd);
                bool actual = target.IsOK();
                Assert.AreEqual(false, actual);
            }

            // 모니터링 시간이므로 OK인 시나리오
            {
                DateTime dtStart = DateTime.Now.AddSeconds(-1);
                DateTime dtEnd = DateTime.Now.AddSeconds(1);
                MonitorLimit_Time_And_MarketData target = new MonitorLimit_Time_And_MarketData(dtStart, dtEnd);
                bool actual = target.IsOK();
                Assert.AreEqual(true, actual);
            }
        }