From: Michał Gołębiowski-Owczarek Date: Wed, 2 Sep 2020 16:04:44 +0000 (+0200) Subject: Tests: Skip the "jQuery.ajax() on unload" test in Safari X-Git-Tag: 4.0.0-beta~158 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=c18dc49699bc27481a4af36ed1a0ee1b19c6eb03;p=jquery.git Tests: Skip the "jQuery.ajax() on unload" test in Safari The test has been already skipped in Chrome as it dropped support for such requests and now Safari has joined the squad. This will resolve AJAX test errors we've had for a while in Safari 13 & iOS 13. Closes gh-4779 --- diff --git a/test/unit/ajax.js b/test/unit/ajax.js index fe831d0b1..db0af6cec 100644 --- a/test/unit/ajax.js +++ b/test/unit/ajax.js @@ -2280,7 +2280,10 @@ if ( typeof window.ArrayBuffer === "undefined" || typeof new XMLHttpRequest().re // Chrome 78 dropped support for synchronous XHR requests inside of // beforeunload, unload, pagehide, and visibilitychange event handlers. // See https://bugs.chromium.org/p/chromium/issues/detail?id=952452 - if ( !/chrome/i.test( navigator.userAgent ) ) { + // Safari 13 did similar changes. The below check will catch them both. + // Edge Legacy fakes Chrome which fakes Safari in their user agents so we need + // to exclude Edge specifically here so that the test continues to run there. + if ( !/safari/i.test( navigator.userAgent ) || /edge\//i.test( navigator.userAgent ) ) { testIframe( "#14379 - jQuery.ajax() on unload", "ajax/onunload.html",