public void OnStateChangedTest() { var mock = new AppWorkerMock(); var start = false; var stop = false; mock.StateChanged += (s, e) => { switch (e.NewState) { case AppWorkerState.Running: start = true; break; case AppWorkerState.Stopped: stop = true; break; } }; mock.Start(); mock.Stop(); Assert.IsTrue(start); Assert.IsTrue(stop); }
public async Task CanStartAndStopTest() { var mock = new AppWorkerMock(); var exit = false; mock.OnExit = () => exit = true; Assert.AreEqual(AppWorkerState.Stopped, mock.State); mock.Start(); await Task.Delay(TimeSpan.FromMilliseconds(100)); Assert.IsTrue(mock.IsBusy, "Worker is busy"); Assert.AreEqual(AppWorkerState.Running, mock.State); mock.Stop(); Assert.AreEqual(AppWorkerState.Stopped, mock.State); Assert.IsTrue(mock.ExitBecauseCancellation, "Exit because cancellation"); Assert.IsTrue(exit, "Exit event was fired"); }
public void OnStateChangedTest() { var mock = new AppWorkerMock(); var start = false; var stop = false; mock.StateChanged += (s, e) => { if (e.NewState == AppWorkerState.Running) { start = true; } if (e.NewState == AppWorkerState.Stopped) { stop = true; } }; mock.Start(); mock.Stop(); Assert.IsTrue(start); Assert.IsTrue(stop); }