public void DoMockWork_Simple(MockWorkIn work, CancellationToken token) { try { Task.Delay(workDurationMs, token).Wait(); token.ThrowIfCancellationRequested(); } catch { doneWork.Enqueue(new Tuple <bool, MockWorkIn>(true, work)); throw; } doneWork.Enqueue(new Tuple <bool, MockWorkIn>(false, work)); }
public MockWorkOut DoMockWork_Simple(MockWorkIn work, CancellationToken token) { try { Task.Delay(workDurationMs, token).Wait(); token.ThrowIfCancellationRequested(); } catch { doneWork.Enqueue(new Tuple <bool, MockWorkIn, MockWorkOut>(true, work, null)); throw; } var done = new MockWorkOut(work); doneWork.Enqueue(new Tuple <bool, MockWorkIn, MockWorkOut>(false, work, done)); return(done); }
public void DoMockWorkBlocking(MockWorkIn work, CancellationToken token) { taskBlocker1.SetResult(null); try { taskBlocker3.Task.Wait(); try { Task.Delay(workDurationMs, token).Wait(); token.ThrowIfCancellationRequested(); } catch { doneWork.Enqueue(new Tuple <bool, MockWorkIn>(true, work)); throw; } doneWork.Enqueue(new Tuple <bool, MockWorkIn>(false, work)); } finally { taskBlocker2.SetResult(null); } }
public MockWorkOut(MockWorkIn originalInputItem) { this.originalInputItem = originalInputItem; }