public async Task Listener_DisposeCancelsAccept_Success() { await using ConnectionFactory factory = new MemoryConnectionFactory(); await using ConnectionListener listener = await factory.ListenAsync(); ValueTask<Connection?> acceptTask = listener.AcceptConnectionAsync(); await listener.DisposeAsync(); Connection? connection = await acceptTask; Assert.Null(connection); }
public async Task Listener_DisposeCancelsConnect_Success() { await using ConnectionFactory factory = new MemoryConnectionFactory(); await using ConnectionListener listener = await factory.ListenAsync(); ValueTask <Connection> connectTask = factory.ConnectAsync(listener.EndPoint !); await listener.DisposeAsync(); SocketException ex = await Assert.ThrowsAsync <SocketException>(async() => { await using Connection connection = await connectTask; }).ConfigureAwait(false); Assert.Equal(SocketError.ConnectionRefused, ex.SocketErrorCode); }
public ValueTask DisposeAsync() { return(ConnectionListener.DisposeAsync()); }
public override ValueTask DisposeAsync() => _listener.DisposeAsync();