Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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");
        }
Esempio n. 3
0
        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);
        }