]> source.dussan.org Git - jquery.git/commitdiff
Tests: Disable CSS Custom Properties tests in old Safari/iOS
authorMichał Gołębiowski-Owczarek <m.goleb@gmail.com>
Mon, 15 Nov 2021 17:40:58 +0000 (18:40 +0100)
committerGitHub <noreply@github.com>
Mon, 15 Nov 2021 17:40:58 +0000 (18:40 +0100)
Safari 9.1 & iOS 9.3 support CSS custom properties but that support
is buggy which crashes our tests. Disable those tests there.

See https://caniuse.com/css-variables

Closes gh-4966

test/unit/css.js

index 84f8c381cb21e9e792e214b22df586cc0a3c180d..e0bff5868b8e42c209a192a29842c41b1095d80c 100644 (file)
@@ -1732,6 +1732,8 @@ QUnit.test( "Do not throw on frame elements from css method (#15098)", function(
 
 ( function() {
        var supportsCssVars,
+               oldSafari = /iphone os 9_/i.test( navigator.userAgent ) ||
+                       /\b9\.\d+(\.\d+)* safari/i.test( navigator.userAgent ),
                elem = jQuery( "<div>" ).appendTo( document.body ),
                div = elem[ 0 ];
 
@@ -1739,7 +1741,15 @@ QUnit.test( "Do not throw on frame elements from css method (#15098)", function(
        supportsCssVars = !!getComputedStyle( div ).getPropertyValue( "--prop" );
        elem.remove();
 
-       QUnit[ supportsCssVars ? "test" : "skip" ]( "css(--customProperty)", function( assert ) {
+       QUnit[
+
+               // Support: iOS 9.3 only, Safari 9.1 only
+               // Safari 9.1 & iOS 9.3 support CSS custom properties but that support
+               // is buggy which crashes our tests.
+               supportsCssVars && !oldSafari ?
+                       "test" :
+                       "skip"
+       ]( "css(--customProperty)", function( assert ) {
                jQuery( "#qunit-fixture" ).append(
                        "<style>\n" +
                        "    .test__customProperties {\n" +