public void StatusEngineCanStartAndStop() { var logger = new MockLogger(); var db = new SQLServerClientDatabase(TestConnectionString, new MockLogger(), SharedMockedCoreSettings); var engine = new StatusEngine(db, logger, 0, SharedMockedCoreSettings); engine.BeginStart(); engine.BeginStop(); }
public void StatusEngineTriggersStoppedEventWhenEngineHasStopped() { var logger = new MockLogger(); var db = new SQLServerClientDatabase(TestConnectionString, new MockLogger(), SharedMockedCoreSettings); var engine = new StatusEngine(db, logger, 0, SharedMockedCoreSettings); var signalStoppedEvent = new AutoResetEvent(false); engine.Stopped += (s, e) => { signalStoppedEvent.Set(); }; engine.BeginStart(); engine.BeginStop(); var engineStoppedSignaled = signalStoppedEvent.WaitOne(TimeSpan.FromSeconds(5)); Assert.IsTrue(engineStoppedSignaled); }