public AVRFacade(IContainer container) { m_Container = container; m_ConfigurationStrategy = m_Container.GetInstance <ISchedulerConfigurationStrategy>(); m_TraceTitle = String.Format("[{0}] WCF Service Call", m_ConfigurationStrategy.GetServiceDisplayName()); }
public SchedulerRunner(IContainer container) { Utils.CheckNotNull(container, "container"); m_Container = container; m_ConfigurationStrategy = container.GetInstance <ISchedulerConfigurationStrategy>(); m_TraceTitle = string.Format("[{0}] Refresh AVR Queries", m_ConfigurationStrategy.GetServiceDisplayName()); m_AutoEvent = new AutoResetEvent(false); m_Watch = new Stopwatch(); m_QueryRefreshTimer = new Timer(QueryRefreshTimerTick, null, Timeout.Infinite, Timeout.Infinite); m_LookupCasheRefreshTimer = new Timer(LookupCasheRefreshTimerTick, null, Timeout.Infinite, Timeout.Infinite); }
public void SchedulerRunnerFakeMissedTaskTickTest() { var mocks = new Mockery(); var facade = mocks.NewMock <IAVRFacade>(); Expect.Once.On(facade).Method("GetQueryIdList").Will(Return.Value(new List <long> { 1, 2, 3 })); Expect.Exactly(6).On(facade).Method("RefreshCachedQueryTableByScheduler"); Expect.Exactly(6).On(facade).Method("DeleteQueryCacheForLanguage"); Expect.Exactly(3).On(facade).Method("GetsQueryCacheUserRequestDate").Will(Return.Value(DateTime.Now)); SchedulerConfigurationSection configuration = GetConfiguration(false); var languages = new List <string> { "en", "ru" }; ISchedulerConfigurationStrategy configStrategy = mocks.NewMock <ISchedulerConfigurationStrategy>(); Expect.Once.On(configStrategy).Method("GetAVRFacade").Will(Return.Value(facade)); Expect.Once.On(configStrategy).Method("GetConfigurationSection").Will(Return.Value(configuration)); Expect.Once.On(configStrategy).Method("GetLanguages").Will(Return.Value(languages)); Expect.Once.On(configStrategy).Method("GetServiceDisplayName").Will(Return.Value("service name")); Container c = new Container(); c.Configure(r => { r.For <ISchedulerConfigurationStrategy>().Use(configStrategy); }); using (var runner = c.GetInstance <SchedulerRunner>()) { runner.Start(); Thread.Sleep(50); runner.QueryRefreshTimerTick(null); } mocks.VerifyAllExpectationsHaveBeenMet(); }