@@ -58,7 +58,22 @@ public static partial class Http
5858 public static readonly Uri RemoteEchoServer = new Uri ( "http://" + Host + "/" + EchoHandler ) ;
5959 public static readonly Uri SecureRemoteEchoServer = new Uri ( "https://" + SecureHost + "/" + EchoHandler ) ;
6060 public static readonly Uri Http2RemoteEchoServer = new Uri ( "https://" + Http2Host + "/" + EchoHandler ) ;
61- public static readonly Uri [ ] EchoServerList = new Uri [ ] { RemoteEchoServer , SecureRemoteEchoServer , Http2RemoteEchoServer } ;
61+ public static Uri [ ] GetEchoServerList ( )
62+ {
63+ if ( PlatformDetection . IsFirefox )
64+ {
65+ // https://github.com/dotnet/runtime/issues/101115
66+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
67+ // return [RemoteEchoServer];
68+ return [ ] ;
69+ }
70+ return [
71+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
72+ // RemoteEchoServer,
73+ SecureRemoteEchoServer ,
74+ Http2RemoteEchoServer
75+ ] ;
76+ }
6277
6378 public static readonly Uri RemoteVerifyUploadServer = new Uri ( "http://" + Host + "/" + VerifyUploadHandler ) ;
6479 public static readonly Uri SecureRemoteVerifyUploadServer = new Uri ( "https://" + SecureHost + "/" + VerifyUploadHandler ) ;
@@ -72,9 +87,21 @@ public static partial class Http
7287 public static readonly Uri Http2RemoteGZipServer = new Uri ( "https://" + Http2Host + "/" + GZipHandler ) ;
7388 public static Uri RemoteLoopServer => new Uri ( "ws://" + RemoteLoopHost + "/" + RemoteLoopHandler ) ;
7489
75- public static readonly object [ ] [ ] EchoServers = EchoServerList . Select ( x => new object [ ] { x } ) . ToArray ( ) ;
76- public static readonly object [ ] [ ] VerifyUploadServers = { new object [ ] { RemoteVerifyUploadServer } , new object [ ] { SecureRemoteVerifyUploadServer } , new object [ ] { Http2RemoteVerifyUploadServer } } ;
77- public static readonly object [ ] [ ] CompressedServers = { new object [ ] { RemoteDeflateServer } , new object [ ] { RemoteGZipServer } , new object [ ] { Http2RemoteDeflateServer } , new object [ ] { Http2RemoteGZipServer } } ;
90+ public static readonly object [ ] [ ] EchoServers = GetEchoServerList ( ) . Select ( x => new object [ ] { x } ) . ToArray ( ) ;
91+ public static readonly object [ ] [ ] VerifyUploadServers = {
92+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
93+ // new object[] { RemoteVerifyUploadServer },
94+ new object [ ] { SecureRemoteVerifyUploadServer } ,
95+ new object [ ] { Http2RemoteVerifyUploadServer }
96+ } ;
97+
98+ public static readonly object [ ] [ ] CompressedServers = {
99+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
100+ // new object[] { RemoteDeflateServer },
101+ new object [ ] { RemoteGZipServer } ,
102+ new object [ ] { Http2RemoteDeflateServer } ,
103+ new object [ ] { Http2RemoteGZipServer }
104+ } ;
78105
79106 public static readonly object [ ] [ ] Http2Servers = { new object [ ] { new Uri ( "https://" + Http2Host ) } } ;
80107 public static readonly object [ ] [ ] Http2NoPushServers = { new object [ ] { new Uri ( "https://" + Http2NoPushHost ) } } ;
@@ -83,7 +110,23 @@ public static partial class Http
83110 public static readonly RemoteServer RemoteSecureHttp11Server = new RemoteServer ( new Uri ( "https://" + SecureHost + "/" ) , HttpVersion . Version11 ) ;
84111 public static readonly RemoteServer RemoteHttp2Server = new RemoteServer ( new Uri ( "https://" + Http2Host + "/" ) , new Version ( 2 , 0 ) ) ;
85112
86- public static readonly IEnumerable < RemoteServer > RemoteServers = new RemoteServer [ ] { RemoteHttp11Server , RemoteSecureHttp11Server , RemoteHttp2Server } ;
113+ public static IEnumerable < RemoteServer > GetRemoteServers ( )
114+ {
115+ if ( PlatformDetection . IsFirefox )
116+ {
117+ // https://github.com/dotnet/runtime/issues/101115
118+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
119+ // return new RemoteServer[] { RemoteHttp11Server };
120+ return [ ] ;
121+ }
122+ return new RemoteServer [ ]
123+ {
124+ // [ActiveIssue("https://github.com/dotnet/runtime/issues/110578)]
125+ // RemoteHttp11Server,
126+ RemoteSecureHttp11Server ,
127+ RemoteHttp2Server
128+ } ;
129+ }
87130
88131 public static readonly IEnumerable < object [ ] > RemoteServersMemberData = RemoteServers . Select ( s => new object [ ] { s } ) ;
89132
0 commit comments