public async Task TestCommandCancellation() { var taskCommand = new TaskCommand(TestExecute); Assert.IsFalse(taskCommand.IsExecuting); Assert.IsFalse(taskCommand.IsCancellationRequested); taskCommand.Execute(); Assert.IsTrue(taskCommand.IsExecuting); await Task.Delay(TimeSpan.FromSeconds(1)); taskCommand.Cancel(); await Task.Delay(TimeSpan.FromSeconds(1)); Assert.IsFalse(taskCommand.IsExecuting); Assert.IsFalse(taskCommand.IsCancellationRequested); }
public void TestCommandCancellation() { var taskCommand = new TaskCommand(TestExecuteAsync); Assert.IsFalse(taskCommand.IsExecuting); Assert.IsFalse(taskCommand.IsCancellationRequested); taskCommand.Execute(); Assert.IsTrue(taskCommand.IsExecuting); ThreadHelper.Sleep(1000); taskCommand.Cancel(); ThreadHelper.Sleep(1000); Assert.IsFalse(taskCommand.IsExecuting); Assert.IsFalse(taskCommand.IsCancellationRequested); }