find.StartInfo.FileName = "find";
find.StartInfo.Arguments = "/usr/ -iname libmsquic.so*";
find.StartInfo.RedirectStandardOutput = true;
+ find.StartInfo.RedirectStandardError = true;
find.Start();
string output = await find.StandardOutput.ReadToEndAsync();
_output.WriteLine(output);
[InlineData(100, 101)]
[InlineData(15, 100)]
[InlineData(10, 1_000)]
- [ActiveIssue("https://github.com/dotnet/runtime/issues/82769", typeof(PlatformDetection), nameof(PlatformDetection.IsArmOrArm64Process))]
[OuterLoop("Higher number of connections slow the test down.")]
private Task Listener_BacklogLimitRefusesConnection_ParallelClients_ClientThrows_Slow(int backlogLimit, int connectCount)
=> Listener_BacklogLimitRefusesConnection_ParallelClients_ClientThrows_Core(backlogLimit, connectCount);
using Xunit.Abstractions;
using System.Diagnostics.Tracing;
using System.Net.Sockets;
+using Microsoft.Quic;
+using static Microsoft.Quic.MsQuic;
namespace System.Net.Quic.Tests
{
public const int PassingTestTimeoutMilliseconds = 4 * 60 * 1000;
public static TimeSpan PassingTestTimeout => TimeSpan.FromMilliseconds(PassingTestTimeoutMilliseconds);
- public QuicTestBase(ITestOutputHelper output)
+ static unsafe QuicTestBase()
+ {
+ Console.WriteLine($"MsQuic {(IsSupported ? "supported" : "not supported")} and using '{MsQuicApi.MsQuicLibraryVersion}'.");
+
+ if (IsSupported)
+ {
+ QUIC_SETTINGS settings = default(QUIC_SETTINGS);
+ settings.IsSet.MaxWorkerQueueDelayUs = 1;
+ settings.MaxWorkerQueueDelayUs = 2_500_000u; // 2.5s, 10x the default
+ if (StatusFailed(MsQuicApi.Api.ApiTable->SetParam(null, QUIC_PARAM_GLOBAL_SETTINGS, (uint)sizeof(QUIC_SETTINGS), (byte*)&settings)))
+ {
+ Console.WriteLine($"Unable to set MsQuic MaxWorkerQueueDelayUs.");
+ }
+ }
+ }
+
+ public unsafe QuicTestBase(ITestOutputHelper output)
{
_output = output;
- _output.WriteLine($"Using {MsQuicApi.MsQuicLibraryVersion}");
}
public void Dispose()