Skip to content

Add timeouts to SendReceive tests #90631

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 16, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public async Task SendRecv_Stream_TCP(IPAddress listenAt, bool useMultipleBuffer

Task serverProcessingTask = Task.Run(async () =>
{
using (Socket remote = await AcceptAsync(server))
using (Socket remote = await AcceptAsync(server).WaitAsync(TestSettings.PassingTestTimeout))
{
if (!useMultipleBuffers)
{
Expand Down Expand Up @@ -109,7 +109,7 @@ public async Task SendRecv_Stream_TCP(IPAddress listenAt, bool useMultipleBuffer
EndPoint clientEndpoint = server.LocalEndPoint;
using (var client = new Socket(clientEndpoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
await ConnectAsync(client, clientEndpoint);
await ConnectAsync(client, clientEndpoint).WaitAsync(TestSettings.PassingTestTimeout);

var random = new Random();
if (!useMultipleBuffers)
Expand Down Expand Up @@ -152,7 +152,7 @@ public async Task SendRecv_Stream_TCP(IPAddress listenAt, bool useMultipleBuffer

client.LingerState = new LingerOption(true, LingerTime);
client.Shutdown(SocketShutdown.Send);
await serverProcessingTask;
await serverProcessingTask.WaitAsync(TestSettings.PassingTestTimeout);
}

Assert.Equal(bytesSent, bytesReceived);
Expand Down Expand Up @@ -231,7 +231,7 @@ public async Task SendRecv_Stream_TCP_AlternateBufferAndBufferList(IPAddress lis

Task serverProcessingTask = Task.Run(async () =>
{
using (Socket remote = await AcceptAsync(server))
using (Socket remote = await AcceptAsync(server).WaitAsync(TestSettings.PassingTestTimeout))
{
byte[] recvBuffer1 = new byte[256], recvBuffer2 = new byte[256];
long iter = 0;
Expand Down Expand Up @@ -269,7 +269,7 @@ public async Task SendRecv_Stream_TCP_AlternateBufferAndBufferList(IPAddress lis
EndPoint clientEndpoint = server.LocalEndPoint;
using (var client = new Socket(clientEndpoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
await ConnectAsync(client, clientEndpoint);
await ConnectAsync(client, clientEndpoint).WaitAsync(TestSettings.PassingTestTimeout);

var random = new Random();
byte[] sendBuffer1 = new byte[512], sendBuffer2 = new byte[512];
Expand Down Expand Up @@ -308,7 +308,7 @@ public async Task SendRecv_Stream_TCP_AlternateBufferAndBufferList(IPAddress lis
}

client.Shutdown(SocketShutdown.Send);
await serverProcessingTask;
await serverProcessingTask.WaitAsync(TestSettings.PassingTestTimeout);
}

Assert.Equal(bytesSent, bytesReceived);
Expand All @@ -330,7 +330,7 @@ public async Task SendRecv_Stream_TCP_MultipleConcurrentReceives(IPAddress liste
using (var client = new Socket(clientEndpoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
Task clientConnect = ConnectAsync(client, clientEndpoint);
using (Socket remote = await AcceptAsync(server))
using (Socket remote = await AcceptAsync(server).WaitAsync(TestSettings.PassingTestTimeout))
{
await clientConnect.WaitAsync(TestSettings.PassingTestTimeout);

Expand Down Expand Up @@ -440,9 +440,9 @@ public async Task SendRecv_Stream_TCP_MultipleConcurrentSends(IPAddress listenAt
using (var client = new Socket(clientEndpoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
Task clientConnect = ConnectAsync(client, clientEndpoint);
using (Socket remote = await AcceptAsync(server))
using (Socket remote = await AcceptAsync(server).WaitAsync(TestSettings.PassingTestTimeout))
{
await clientConnect;
await clientConnect.WaitAsync(TestSettings.PassingTestTimeout);

Task<int> send1, send2, send3;
if (useMultipleBuffers)
Expand Down Expand Up @@ -503,7 +503,7 @@ public async Task SendRecvPollSync_TcpListener_Socket(IPAddress listenAt, bool p
_output?.WriteLine($"{DateTime.Now} Starting listener at {listener.LocalEndpoint}");
Task serverTask = Task.Run(async () =>
{
using (Socket remote = await listener.AcceptSocketAsync())
using (Socket remote = await listener.AcceptSocketAsync().WaitAsync(TestSettings.PassingTestTimeout))
{
var recvBuffer = new byte[256];
int count = 0;
Expand Down Expand Up @@ -537,7 +537,7 @@ public async Task SendRecvPollSync_TcpListener_Socket(IPAddress listenAt, bool p

using (var client = new Socket(clientEndpoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
await ConnectAsync(client, clientEndpoint);
await ConnectAsync(client, clientEndpoint).WaitAsync(TestSettings.PassingTestTimeout);

if (pollBeforeOperation)
{
Expand Down Expand Up @@ -592,7 +592,8 @@ public async Task Send_0ByteSend_Success()
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down Expand Up @@ -625,7 +626,8 @@ public async Task SendRecv_0ByteReceive_Success()
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down Expand Up @@ -682,7 +684,7 @@ public async Task Send_0ByteSendTo_Success()
Assert.Equal(client.LocalEndPoint, result.RemoteEndPoint);

// Read real packet.
result = await ReceiveFromAsync(server, buffer, new IPEndPoint(IPAddress.Any, 0));
result = await ReceiveFromAsync(server, buffer, new IPEndPoint(IPAddress.Any, 0)).WaitAsync(TestSettings.PassingTestTimeout);

Assert.Equal(1, result.ReceivedBytes);
Assert.Equal(client.LocalEndPoint, result.RemoteEndPoint);
Expand All @@ -703,7 +705,8 @@ public async Task Receive0ByteReturns_WhenPeerDisconnects()
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down Expand Up @@ -743,7 +746,8 @@ public async Task SendRecv_BlockingNonBlocking_LingerTimeout_Success(bool blocki
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down Expand Up @@ -773,7 +777,8 @@ public async Task SendRecv_NoBuffering_Success()
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down Expand Up @@ -812,7 +817,8 @@ public async Task SendRecv_DisposeDuringPendingReceive_ThrowsSocketException()
Task<Socket> acceptTask = AcceptAsync(listener);
await Task.WhenAll(
acceptTask,
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)));
ConnectAsync(client, new IPEndPoint(IPAddress.Loopback, ((IPEndPoint)listener.LocalEndPoint).Port)))
.WaitAsync(TestSettings.PassingTestTimeout);

using (Socket server = await acceptTask)
{
Expand Down