diff --git a/tests/common/TestRuntime.cs b/tests/common/TestRuntime.cs index 58a1e9ba2840..9d22704d4815 100644 --- a/tests/common/TestRuntime.cs +++ b/tests/common/TestRuntime.cs @@ -1415,9 +1415,13 @@ public static bool IsCoreCLR { } } - public static void IgnoreInCIIfBadNetwork (Exception ex) + public static void IgnoreInCIIfBadNetwork (Exception? ex) { + if (ex is null) + return; + IgnoreInCIfHttpStatusCodes (ex, HttpStatusCode.BadGateway, HttpStatusCode.GatewayTimeout, HttpStatusCode.ServiceUnavailable); + IgnoreInCIIfNetworkConnectionLost (ex); } public static void IgnoreInCIIfForbidden (Exception ex) @@ -1449,6 +1453,18 @@ public static void IgnoreInCIfHttpStatusCodes (Exception ex, params HttpStatusCo IgnoreInCI ($"Ignored due to http status code '{status}': {ex.Message}"); } + public static void IgnoreInCIIfNetworkConnectionLost (Exception ex) + { + // completed), "CreateDataTask a"); - Assert.IsNull (ex, "CreateDataTask a Exception"); + }, () => completed), ref ex, "CreateDataTask a"); completed = false; AssertTrueOrIgnoreInCI (TestRuntime.RunAsync (DateTime.Now.AddSeconds (timeout), async () => { @@ -79,8 +81,7 @@ public void CreateDataTaskAsync () } finally { completed = true; } - }, () => completed), "CreateDataTask b"); - Assert.IsNull (ex, "CreateDataTask b Exception"); + }, () => completed), ref ex, "CreateDataTask b"); /* CreateDownloadTask */ completed = false; @@ -92,8 +93,7 @@ public void CreateDataTaskAsync () } finally { completed = true; } - }, () => completed), "CreateDownloadTask a"); - Assert.IsNull (ex, "CreateDownloadTask a Exception"); + }, () => completed), ref ex, "CreateDownloadTask a"); completed = false; @@ -105,8 +105,7 @@ public void CreateDataTaskAsync () } finally { completed = true; } - }, () => completed), "CreateDownloadTask b"); - Assert.IsNull (ex, "CreateDownloadTask b Exception"); + }, () => completed), ref ex, "CreateDownloadTask b"); /* CreateUploadTask */ completed = false; @@ -120,8 +119,7 @@ public void CreateDataTaskAsync () } finally { completed = true; } - }, () => completed), "CreateUploadTask a"); - Assert.IsNull (ex, "CreateUploadTask a Exception"); + }, () => completed), ref ex, "CreateUploadTask a"); completed = false; AssertTrueOrIgnoreInCI (TestRuntime.RunAsync (DateTime.Now.AddSeconds (timeout), async () => { @@ -134,8 +132,7 @@ public void CreateDataTaskAsync () } finally { completed = true; } - }, () => completed), "CreateUploadTask b"); - Assert.IsNull (ex, "CreateUploadTask b Exception"); + }, () => completed), ref ex, "CreateUploadTask b"); } [Test] @@ -170,6 +167,7 @@ public void DownloadDataAsync () } }, () => completed); + TestRuntime.IgnoreInCIIfBadNetwork (ex); Assert.IsNull (ex, "Exception"); Assert.AreEqual (-1, failed_iteration, "Failed"); }