public TestChannel(int maxCount = 1) { _testChannelWriter = new TestChannelWriter(); _testChannelReader = new TestChannelReader(); _testChannelReader.MaxCount = maxCount; Writer = _testChannelWriter; Reader = _testChannelReader; }
public async Task DefaultWriteAsync_UsesWaitToWriteAsyncAndTryWrite() { var c = new TestChannelWriter<int>(10); Assert.False(c.TryComplete()); Assert.Equal(TaskStatus.Canceled, c.WriteAsync(42, new CancellationToken(true)).AsTask().Status); int count = 0; try { while (true) { await c.WriteAsync(count++); } } catch (ChannelClosedException) { } Assert.Equal(11, count); }