Skip to content

SupportedLinuxPlatforms_IsSupportedIsTrue fails on distros without quic #82077

Closed
@tmds

Description

@tmds

#81481 added a test which hard-codes the availability of quic for the runtime CI configuration:

[ActiveIssue("https://github.com/dotnet/runtime/issues/81901", typeof(PlatformDetection), nameof(PlatformDetection.IsAlpine313), nameof(PlatformDetection.IsInContainer))]
[ActiveIssue("https://github.com/dotnet/runtime/issues/81901", typeof(PlatformDetection), nameof(PlatformDetection.IsAlpine314), nameof(PlatformDetection.IsInContainer))]
[ActiveIssue("https://github.com/dotnet/runtime/issues/81901", typeof(PlatformDetection), nameof(PlatformDetection.IsMariner1), nameof(PlatformDetection.IsInContainer))]
[ActiveIssue("https://github.com/dotnet/runtime/issues/81901", typeof(PlatformDetection), nameof(PlatformDetection.IsCentos7), nameof(PlatformDetection.IsInContainer))]
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsLinux))]
public void SupportedLinuxPlatforms_IsSupportedIsTrue()
{
_output.WriteLine($"Running on {PlatformDetection.GetDistroVersionString()}");
Assert.True(QuicListener.IsSupported);
Assert.True(QuicConnection.IsSupported);
}

This test fails on our internal CI builds both on Fedora and RHEL as there is no quic there.

The other test that was added in this PR (SupportedLinuxPlatformsWithMsquic_IsSupportedIsTrue) looks like it is doing the right thing: check the IsSupported based on the availability of the native libmsquic library.

Can we remove SupportedLinuxPlatforms_IsSupportedIsTrue?

Additionally, SupportedLinuxPlatformsWithMsquic_IsSupportedIsTrue can probably be improved by using NativeLibrary to try and load libmsquic, and also verify that when the native library is not present, IsSupported returns false.

@ManickaP @CarnaViire @wfurt @karelz wdyt?

cc @omajid

Known Issue Error Message

Fill the error message using known issues guidance.

{
  "ErrorMessage": "",
  "BuildRetry": false
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-System.Net.Quictracking-external-issueThe issue is caused by external problem (e.g. OS) - nothing we can do to fix it directly

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions