public void FailCancelsWriteTasks()
        {
            var sut   = new BufferedChannel <int>(0);
            var task1 = sut.TryWriteAsync(1);
            var task2 = sut.TryWriteAsync(1);

            sut.Terminate(new InvalidOperationException());
            Should.Throw <InvalidOperationException>(task1, Timeout1Sec);
            Should.Throw <InvalidOperationException>(task2, Timeout1Sec);
        }
        public void CancellationCancelsWriteTasks()
        {
            var sut   = new BufferedChannel <int>(0);
            var task1 = sut.TryWriteAsync(1);
            var task2 = sut.TryWriteAsync(1);

            sut.Terminate();
            Should.Throw <OperationCanceledException>(task1, Timeout1Sec);
            Should.Throw <OperationCanceledException>(task2, Timeout1Sec);
        }