diff options
author | Servo WPT Sync <32481905+servo-wpt-sync@users.noreply.github.com> | 2024-11-03 02:33:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-03 01:33:12 +0000 |
commit | b22c0771be89e1962a2e39a43988278229fc0496 (patch) | |
tree | 29cb12d6c9061bf27ff63e64f11302e5dcf7a541 | |
parent | 0759dde11b8cbf8f06dee35314c60c845bd4062d (diff) | |
download | servo-b22c0771be89e1962a2e39a43988278229fc0496.tar.gz servo-b22c0771be89e1962a2e39a43988278229fc0496.zip |
Update web-platform-tests to revision b'd2f2efe271ae2fa661c52ed2fe8564e21ad4036f' (#34115)
Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
1737 files changed, 45428 insertions, 16160 deletions
diff --git a/tests/wpt/meta-legacy-layout/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini b/tests/wpt/meta-legacy-layout/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini index 4b71ba5969b..348eebd4eed 100644 --- a/tests/wpt/meta-legacy-layout/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini +++ b/tests/wpt/meta-legacy-layout/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini @@ -1,3 +1,13 @@ [cross-partition-navigation.tentative.https.html] + expected: TIMEOUT [Blob URL navigation should enforce noopener for a cross-top-level-site navigation] expected: FAIL + + [Blob URL window.open should enforce noopener for a cross-top-level-site navigation] + expected: FAIL + + [Blob URL link click should enforce noopener for a cross-top-level-site navigation] + expected: FAIL + + [Blob URL area element click should enforce noopener for a cross-top-level-site navigation] + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/WebCryptoAPI/algorithm-discards-context.https.window.js.ini b/tests/wpt/meta-legacy-layout/WebCryptoAPI/algorithm-discards-context.https.window.js.ini index dbc41bb26ca..d144503a7d2 100644 --- a/tests/wpt/meta-legacy-layout/WebCryptoAPI/algorithm-discards-context.https.window.js.ini +++ b/tests/wpt/meta-legacy-layout/WebCryptoAPI/algorithm-discards-context.https.window.js.ini @@ -6,9 +6,6 @@ [Context is discarded in decrypt] expected: TIMEOUT - [Context is discarded in digest] - expected: TIMEOUT - [Context is discarded in sign] expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini b/tests/wpt/meta-legacy-layout/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini new file mode 100644 index 00000000000..717ecd6b3f1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini @@ -0,0 +1,4 @@ +[derive_key_and_encrypt.https.any.worker.html] + +[derive_key_and_encrypt.https.any.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/WebCryptoAPI/digest/digest.https.any.js.ini b/tests/wpt/meta-legacy-layout/WebCryptoAPI/digest/digest.https.any.js.ini deleted file mode 100644 index 15e0258b42b..00000000000 --- a/tests/wpt/meta-legacy-layout/WebCryptoAPI/digest/digest.https.any.js.ini +++ /dev/null @@ -1,482 +0,0 @@ -[digest.https.any.worker.html] - [SHA-1 with empty source data] - expected: FAIL - - [sha-1 with empty source data] - expected: FAIL - - [Sha-1 with empty source data] - expected: FAIL - - [SHA-1 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-256 with empty source data] - expected: FAIL - - [sha-256 with empty source data] - expected: FAIL - - [Sha-256 with empty source data] - expected: FAIL - - [SHA-256 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-384 with empty source data] - expected: FAIL - - [sha-384 with empty source data] - expected: FAIL - - [Sha-384 with empty source data] - expected: FAIL - - [SHA-384 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-512 with empty source data] - expected: FAIL - - [sha-512 with empty source data] - expected: FAIL - - [Sha-512 with empty source data] - expected: FAIL - - [SHA-512 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-1 with short source data] - expected: FAIL - - [sha-1 with short source data] - expected: FAIL - - [Sha-1 with short source data] - expected: FAIL - - [SHA-1 with short source data and altered buffer after call] - expected: FAIL - - [SHA-256 with short source data] - expected: FAIL - - [sha-256 with short source data] - expected: FAIL - - [Sha-256 with short source data] - expected: FAIL - - [SHA-256 with short source data and altered buffer after call] - expected: FAIL - - [SHA-384 with short source data] - expected: FAIL - - [sha-384 with short source data] - expected: FAIL - - [Sha-384 with short source data] - expected: FAIL - - [SHA-384 with short source data and altered buffer after call] - expected: FAIL - - [SHA-512 with short source data] - expected: FAIL - - [sha-512 with short source data] - expected: FAIL - - [Sha-512 with short source data] - expected: FAIL - - [SHA-512 with short source data and altered buffer after call] - expected: FAIL - - [SHA-1 with medium source data] - expected: FAIL - - [sha-1 with medium source data] - expected: FAIL - - [Sha-1 with medium source data] - expected: FAIL - - [SHA-1 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-256 with medium source data] - expected: FAIL - - [sha-256 with medium source data] - expected: FAIL - - [Sha-256 with medium source data] - expected: FAIL - - [SHA-256 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-384 with medium source data] - expected: FAIL - - [sha-384 with medium source data] - expected: FAIL - - [Sha-384 with medium source data] - expected: FAIL - - [SHA-384 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-512 with medium source data] - expected: FAIL - - [sha-512 with medium source data] - expected: FAIL - - [Sha-512 with medium source data] - expected: FAIL - - [SHA-512 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-1 with long source data] - expected: FAIL - - [sha-1 with long source data] - expected: FAIL - - [Sha-1 with long source data] - expected: FAIL - - [SHA-1 with long source data and altered buffer after call] - expected: FAIL - - [SHA-256 with long source data] - expected: FAIL - - [sha-256 with long source data] - expected: FAIL - - [Sha-256 with long source data] - expected: FAIL - - [SHA-256 with long source data and altered buffer after call] - expected: FAIL - - [SHA-384 with long source data] - expected: FAIL - - [sha-384 with long source data] - expected: FAIL - - [Sha-384 with long source data] - expected: FAIL - - [SHA-384 with long source data and altered buffer after call] - expected: FAIL - - [SHA-512 with long source data] - expected: FAIL - - [sha-512 with long source data] - expected: FAIL - - [Sha-512 with long source data] - expected: FAIL - - [SHA-512 with long source data and altered buffer after call] - expected: FAIL - - [AES-GCM with empty] - expected: FAIL - - [RSA-OAEP with empty] - expected: FAIL - - [PBKDF2 with empty] - expected: FAIL - - [AES-KW with empty] - expected: FAIL - - [AES-GCM with short] - expected: FAIL - - [RSA-OAEP with short] - expected: FAIL - - [PBKDF2 with short] - expected: FAIL - - [AES-KW with short] - expected: FAIL - - [AES-GCM with medium] - expected: FAIL - - [RSA-OAEP with medium] - expected: FAIL - - [PBKDF2 with medium] - expected: FAIL - - [AES-KW with medium] - expected: FAIL - - [AES-GCM with long] - expected: FAIL - - [RSA-OAEP with long] - expected: FAIL - - [PBKDF2 with long] - expected: FAIL - - [AES-KW with long] - expected: FAIL - - -[digest.https.any.html] - [SHA-1 with empty source data] - expected: FAIL - - [sha-1 with empty source data] - expected: FAIL - - [Sha-1 with empty source data] - expected: FAIL - - [SHA-1 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-256 with empty source data] - expected: FAIL - - [sha-256 with empty source data] - expected: FAIL - - [Sha-256 with empty source data] - expected: FAIL - - [SHA-256 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-384 with empty source data] - expected: FAIL - - [sha-384 with empty source data] - expected: FAIL - - [Sha-384 with empty source data] - expected: FAIL - - [SHA-384 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-512 with empty source data] - expected: FAIL - - [sha-512 with empty source data] - expected: FAIL - - [Sha-512 with empty source data] - expected: FAIL - - [SHA-512 with empty source data and altered buffer after call] - expected: FAIL - - [SHA-1 with short source data] - expected: FAIL - - [sha-1 with short source data] - expected: FAIL - - [Sha-1 with short source data] - expected: FAIL - - [SHA-1 with short source data and altered buffer after call] - expected: FAIL - - [SHA-256 with short source data] - expected: FAIL - - [sha-256 with short source data] - expected: FAIL - - [Sha-256 with short source data] - expected: FAIL - - [SHA-256 with short source data and altered buffer after call] - expected: FAIL - - [SHA-384 with short source data] - expected: FAIL - - [sha-384 with short source data] - expected: FAIL - - [Sha-384 with short source data] - expected: FAIL - - [SHA-384 with short source data and altered buffer after call] - expected: FAIL - - [SHA-512 with short source data] - expected: FAIL - - [sha-512 with short source data] - expected: FAIL - - [Sha-512 with short source data] - expected: FAIL - - [SHA-512 with short source data and altered buffer after call] - expected: FAIL - - [SHA-1 with medium source data] - expected: FAIL - - [sha-1 with medium source data] - expected: FAIL - - [Sha-1 with medium source data] - expected: FAIL - - [SHA-1 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-256 with medium source data] - expected: FAIL - - [sha-256 with medium source data] - expected: FAIL - - [Sha-256 with medium source data] - expected: FAIL - - [SHA-256 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-384 with medium source data] - expected: FAIL - - [sha-384 with medium source data] - expected: FAIL - - [Sha-384 with medium source data] - expected: FAIL - - [SHA-384 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-512 with medium source data] - expected: FAIL - - [sha-512 with medium source data] - expected: FAIL - - [Sha-512 with medium source data] - expected: FAIL - - [SHA-512 with medium source data and altered buffer after call] - expected: FAIL - - [SHA-1 with long source data] - expected: FAIL - - [sha-1 with long source data] - expected: FAIL - - [Sha-1 with long source data] - expected: FAIL - - [SHA-1 with long source data and altered buffer after call] - expected: FAIL - - [SHA-256 with long source data] - expected: FAIL - - [sha-256 with long source data] - expected: FAIL - - [Sha-256 with long source data] - expected: FAIL - - [SHA-256 with long source data and altered buffer after call] - expected: FAIL - - [SHA-384 with long source data] - expected: FAIL - - [sha-384 with long source data] - expected: FAIL - - [Sha-384 with long source data] - expected: FAIL - - [SHA-384 with long source data and altered buffer after call] - expected: FAIL - - [SHA-512 with long source data] - expected: FAIL - - [sha-512 with long source data] - expected: FAIL - - [Sha-512 with long source data] - expected: FAIL - - [SHA-512 with long source data and altered buffer after call] - expected: FAIL - - [AES-GCM with empty] - expected: FAIL - - [RSA-OAEP with empty] - expected: FAIL - - [PBKDF2 with empty] - expected: FAIL - - [AES-KW with empty] - expected: FAIL - - [AES-GCM with short] - expected: FAIL - - [RSA-OAEP with short] - expected: FAIL - - [PBKDF2 with short] - expected: FAIL - - [AES-KW with short] - expected: FAIL - - [AES-GCM with medium] - expected: FAIL - - [RSA-OAEP with medium] - expected: FAIL - - [PBKDF2 with medium] - expected: FAIL - - [AES-KW with medium] - expected: FAIL - - [AES-GCM with long] - expected: FAIL - - [RSA-OAEP with long] - expected: FAIL - - [PBKDF2 with long] - expected: FAIL - - [AES-KW with long] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/WebCryptoAPI/idlharness.https.any.js.ini b/tests/wpt/meta-legacy-layout/WebCryptoAPI/idlharness.https.any.js.ini index 4ffa9278cd5..2fbf1bd34cc 100644 --- a/tests/wpt/meta-legacy-layout/WebCryptoAPI/idlharness.https.any.js.ini +++ b/tests/wpt/meta-legacy-layout/WebCryptoAPI/idlharness.https.any.js.ini @@ -8,9 +8,6 @@ [SubtleCrypto interface: operation verify(AlgorithmIdentifier, CryptoKey, BufferSource, BufferSource)] expected: FAIL - [SubtleCrypto interface: operation digest(AlgorithmIdentifier, BufferSource)] - expected: FAIL - [SubtleCrypto interface: operation generateKey(AlgorithmIdentifier, boolean, [object Object\])] expected: FAIL @@ -41,12 +38,6 @@ [SubtleCrypto interface: calling verify(AlgorithmIdentifier, CryptoKey, BufferSource, BufferSource) on crypto.subtle with too few arguments must throw TypeError] expected: FAIL - [SubtleCrypto interface: crypto.subtle must inherit property "digest(AlgorithmIdentifier, BufferSource)" with the proper type] - expected: FAIL - - [SubtleCrypto interface: calling digest(AlgorithmIdentifier, BufferSource) on crypto.subtle with too few arguments must throw TypeError] - expected: FAIL - [SubtleCrypto interface: crypto.subtle must inherit property "generateKey(AlgorithmIdentifier, boolean, [object Object\])" with the proper type] expected: FAIL @@ -121,9 +112,6 @@ [SubtleCrypto interface: operation verify(AlgorithmIdentifier, CryptoKey, BufferSource, BufferSource)] expected: FAIL - [SubtleCrypto interface: operation digest(AlgorithmIdentifier, BufferSource)] - expected: FAIL - [SubtleCrypto interface: operation generateKey(AlgorithmIdentifier, boolean, [object Object\])] expected: FAIL @@ -154,12 +142,6 @@ [SubtleCrypto interface: calling verify(AlgorithmIdentifier, CryptoKey, BufferSource, BufferSource) on crypto.subtle with too few arguments must throw TypeError] expected: FAIL - [SubtleCrypto interface: crypto.subtle must inherit property "digest(AlgorithmIdentifier, BufferSource)" with the proper type] - expected: FAIL - - [SubtleCrypto interface: calling digest(AlgorithmIdentifier, BufferSource) on crypto.subtle with too few arguments must throw TypeError] - expected: FAIL - [SubtleCrypto interface: crypto.subtle must inherit property "generateKey(AlgorithmIdentifier, boolean, [object Object\])" with the proper type] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/CSS2/floats/crashtests/firefox-bug-1904419.html.ini b/tests/wpt/meta-legacy-layout/css/CSS2/floats/crashtests/firefox-bug-1904419.html.ini new file mode 100644 index 00000000000..6fb8bf47ce5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/CSS2/floats/crashtests/firefox-bug-1904419.html.ini @@ -0,0 +1,2 @@ +[firefox-bug-1904419.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-parsing.html.ini b/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-parsing.html.ini deleted file mode 100644 index b0796527bd7..00000000000 --- a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-parsing.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mix-blend-mode-parsing.html] - [Mix-blend-mode plus-lighter] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter-basic.html.ini b/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter-basic.html.ini deleted file mode 100644 index 88ceb05d71f..00000000000 --- a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter-basic.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[mix-blend-mode-plus-lighter-basic.html] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter.html.ini b/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter.html.ini deleted file mode 100644 index d3e95cf5702..00000000000 --- a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-plus-lighter.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[mix-blend-mode-plus-lighter.html] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini b/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini new file mode 100644 index 00000000000..26726a1734d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini @@ -0,0 +1,2 @@ +[mix-blend-mode-video.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-layer-noop.html.ini b/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-layer-noop.html.ini new file mode 100644 index 00000000000..5a1d6e00038 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-layer-noop.html.ini @@ -0,0 +1,16 @@ +[all-prop-revert-layer-noop.html?include=6] + expected: CRASH + +[all-prop-revert-layer-noop.html?include=7] + +[all-prop-revert-layer-noop.html?include=4] + +[all-prop-revert-layer-noop.html?include=3] + +[all-prop-revert-layer-noop.html?include=0] + +[all-prop-revert-layer-noop.html?include=2] + +[all-prop-revert-layer-noop.html?include=1] + +[all-prop-revert-layer-noop.html?include=5] diff --git a/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-noop.html.ini b/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-noop.html.ini index b550318b5c4..495faf70820 100644 --- a/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-noop.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-cascade/all-prop-revert-noop.html.ini @@ -4,3 +4,19 @@ [textarea] expected: FAIL + + +[all-prop-revert-noop.html?include=6] + expected: CRASH + +[all-prop-revert-noop.html?include=5] + +[all-prop-revert-noop.html?include=4] + +[all-prop-revert-noop.html?include=2] + +[all-prop-revert-noop.html?include=1] + +[all-prop-revert-noop.html?include=0] + +[all-prop-revert-noop.html?include=7] diff --git a/tests/wpt/meta-legacy-layout/css/css-cascade/scope-specificity.html.ini b/tests/wpt/meta-legacy-layout/css/css-cascade/scope-specificity.html.ini index cf0b84e5101..dae34ee9f45 100644 --- a/tests/wpt/meta-legacy-layout/css/css-cascade/scope-specificity.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-cascade/scope-specificity.html.ini @@ -55,3 +55,6 @@ [@scope (#main) { > .a { } } and :where(#main) > .a] expected: FAIL + + [@scope { & .b { } } and :where(:scope) .b] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color-hdr/computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-color-hdr/computed.html.ini new file mode 100644 index 00000000000..8a0e56f83fc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-color-hdr/computed.html.ini @@ -0,0 +1,51 @@ +[computed.html] + [Property dynamic-range-limit value 'high'] + expected: FAIL + + [Property dynamic-range-limit value 'constrained-high'] + expected: FAIL + + [Property dynamic-range-limit value 'standard'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 75%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, high 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 25%, standard 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 100%, standard 100%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 80%, standard 60%, constrained-high 60%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, constrained-high 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(constrained-high 75%, standard 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(constrained-high 25%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, constrained-high 50%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 10%, constrained-high 20%, high 20%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 10%, standard 30%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(dynamic-range-limit-mix(standard 10%, high 30%) 20%, standard 80%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(dynamic-range-limit-mix(standard 25%, high 75%) 20%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 40%, dynamic-range-limit-mix(constrained-high 25%, high 75%) 40%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 10%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 20%, dynamic-range-limit-mix(constrained-high 10%, high 30%) 20%)'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color-hdr/inheritance.html.ini b/tests/wpt/meta-legacy-layout/css/css-color-hdr/inheritance.html.ini new file mode 100644 index 00000000000..b7307d0fe24 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-color-hdr/inheritance.html.ini @@ -0,0 +1,6 @@ +[inheritance.html] + [Property dynamic-range-limit has initial value high] + expected: FAIL + + [Property dynamic-range-limit inherits] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color-hdr/interpolation.html.ini b/tests/wpt/meta-legacy-layout/css/css-color-hdr/interpolation.html.ini new file mode 100644 index 00000000000..8b0224cf3f4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-color-hdr/interpolation.html.ini @@ -0,0 +1,192 @@ +[interpolation.html] + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color-hdr/parsing.html.ini b/tests/wpt/meta-legacy-layout/css/css-color-hdr/parsing.html.ini new file mode 100644 index 00000000000..b5075cf660f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-color-hdr/parsing.html.ini @@ -0,0 +1,30 @@ +[parsing.html] + [e.style['dynamic-range-limit'\] = "standard" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "high" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "constrained-high" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 80%, standard 20%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 8%, standard 2%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 99%, standard 99%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(constrained-high 20%, high 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(dynamic-range-limit-mix(constrained-high 90%, high 10%) 1%, high 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 1%, dynamic-range-limit-mix(constrained-high 2%, high 10%) 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(dynamic-range-limit-mix(high 1%, standard 2%) 3%, dynamic-range-limit-mix(constrained-high 5%, high 5%) 6%)" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/crashtests/iframe-init-crash.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/crashtests/iframe-init-crash.html.ini new file mode 100644 index 00000000000..a9527717956 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/crashtests/iframe-init-crash.html.ini @@ -0,0 +1,2 @@ +[iframe-init-crash.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/registered-color-style-queries.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/registered-color-style-queries.html.ini index 3befc312c69..d4281d42b51 100644 --- a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/registered-color-style-queries.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/registered-color-style-queries.html.ini @@ -1,4 +1,5 @@ [registered-color-style-queries.html] + expected: ERROR [Registered color with light color-scheme and light-dark()] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini index bf71bdf192b..132e4ea1fbc 100644 --- a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini @@ -1,2 +1,9 @@ [container-type-scroll-state-computed.html] - expected: ERROR + [Property container-type value 'scroll-state'] + expected: FAIL + + [Property container-type value 'scroll-state size'] + expected: FAIL + + [Property container-type value 'inline-size scroll-state'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini new file mode 100644 index 00000000000..27cb88702ca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-overflowing-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini new file mode 100644 index 00000000000..17708297d9b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-snapped-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini new file mode 100644 index 00000000000..8ef346bc83c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-stuck-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/style-query-document-element.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/style-query-document-element.html.ini index d59e1b1536d..e0b2158c1b4 100644 --- a/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/style-query-document-element.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/container-queries/style-query-document-element.html.ini @@ -1,2 +1,3 @@ [style-query-document-element.html] - expected: ERROR + [style query should evaluate to true] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-conditional/js/supports-at-rule.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-conditional/js/supports-at-rule.tentative.html.ini new file mode 100644 index 00000000000..f8d0581c7c5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-conditional/js/supports-at-rule.tentative.html.ini @@ -0,0 +1,120 @@ +[supports-at-rule.tentative.html] + [@supports at-rule] + expected: FAIL + + [@supports at-rule 1] + expected: FAIL + + [@supports at-rule 2] + expected: FAIL + + [@supports at-rule 3] + expected: FAIL + + [@supports at-rule 4] + expected: FAIL + + [@supports at-rule 6] + expected: FAIL + + [@supports at-rule 7] + expected: FAIL + + [@supports at-rule 8] + expected: FAIL + + [quoted value is OK] + expected: FAIL + + [implicit end parenthesis] + expected: FAIL + + [@supports at-rule 16] + expected: FAIL + + [@supports at-rule 17] + expected: FAIL + + [@supports at-rule 18] + expected: FAIL + + [@supports at-rule 19] + expected: FAIL + + [@supports at-rule 20] + expected: FAIL + + [@supports at-rule 21] + expected: FAIL + + [@supports at-rule 22] + expected: FAIL + + [@supports at-rule 23] + expected: FAIL + + [@supports at-rule 24] + expected: FAIL + + [@supports at-rule 25] + expected: FAIL + + [@supports at-rule 26] + expected: FAIL + + [@supports at-rule 27] + expected: FAIL + + [@supports at-rule 28] + expected: FAIL + + [@supports at-rule 30] + expected: FAIL + + [@supports at-rule 31] + expected: FAIL + + [@supports at-rule 32] + expected: FAIL + + [@supports at-rule 33] + expected: FAIL + + [@supports at-rule 34] + expected: FAIL + + [@supports at-rule 35] + expected: FAIL + + [@supports at-rule 36] + expected: FAIL + + [@supports at-rule 37] + expected: FAIL + + [@supports at-rule 38] + expected: FAIL + + [@supports at-rule 39] + expected: FAIL + + [@supports at-rule 40] + expected: FAIL + + [@supports at-rule 41] + expected: FAIL + + [@supports at-rule 42] + expected: FAIL + + [@supports at-rule 43] + expected: FAIL + + [@supports at-rule 44] + expected: FAIL + + [@supports at-rule 45] + expected: FAIL + + [@supports at-rule 46] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-content/element-replacement-on-replaced-element.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-content/element-replacement-on-replaced-element.tentative.html.ini deleted file mode 100644 index 7bd1c2d4164..00000000000 --- a/tests/wpt/meta-legacy-layout/css/css-content/element-replacement-on-replaced-element.tentative.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[element-replacement-on-replaced-element.tentative.html] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-display/display-contents-unusual-html-elements-none.html.ini b/tests/wpt/meta-legacy-layout/css/css-display/display-contents-unusual-html-elements-none.html.ini index be2b22bc624..8bcd13f4fa2 100644 --- a/tests/wpt/meta-legacy-layout/css/css-display/display-contents-unusual-html-elements-none.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-display/display-contents-unusual-html-elements-none.html.ini @@ -1,2 +1,2 @@ [display-contents-unusual-html-elements-none.html] - expected: FAIL + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/css/css-fonts/generic-family-keywords-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-fonts/generic-family-keywords-001.html.ini index 24862c1a821..78ff57e023b 100644 --- a/tests/wpt/meta-legacy-layout/css/css-fonts/generic-family-keywords-001.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-fonts/generic-family-keywords-001.html.ini @@ -5,14 +5,5 @@ [@font-face matching for quoted and unquoted serif] expected: FAIL - [@font-face matching for quoted and unquoted fantasy] - expected: FAIL - - [@font-face matching for quoted and unquoted monospace] - expected: FAIL - [@font-face matching for quoted and unquoted emoji] expected: FAIL - - [@font-face matching for quoted and unquoted cursive] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html.ini new file mode 100644 index 00000000000..fd9b35a5440 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html.ini @@ -0,0 +1,3 @@ +[absolute-positioning-definite-sizes-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html.ini new file mode 100644 index 00000000000..2896f5b9ecf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html.ini @@ -0,0 +1,30 @@ +[absolute-positioning-grid-container-containing-block-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html.ini new file mode 100644 index 00000000000..3fe9720bde1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html.ini @@ -0,0 +1,27 @@ +[absolute-positioning-grid-container-parent-001.html] + [.container 4] + expected: FAIL + + [.container 5] + expected: FAIL + + [.container 6] + expected: FAIL + + [.container 7] + expected: FAIL + + [.container 8] + expected: FAIL + + [.container 9] + expected: FAIL + + [.container 10] + expected: FAIL + + [.container 11] + expected: FAIL + + [.container 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-001.html.ini new file mode 100644 index 00000000000..28f1b27b9cc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-001.html.ini @@ -0,0 +1,2 @@ +[descendant-static-position-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-002.html.ini new file mode 100644 index 00000000000..b3aceb4fbfc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-002.html.ini @@ -0,0 +1,2 @@ +[descendant-static-position-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-003.html.ini new file mode 100644 index 00000000000..f2a52bf6439 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-003.html.ini @@ -0,0 +1,2 @@ +[descendant-static-position-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-004.html.ini new file mode 100644 index 00000000000..5ba7f6ce0e0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/descendant-static-position-004.html.ini @@ -0,0 +1,2 @@ +[descendant-static-position-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/empty-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/empty-grid-001.html.ini new file mode 100644 index 00000000000..5a3e5cc833c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/empty-grid-001.html.ini @@ -0,0 +1,27 @@ +[empty-grid-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-001.html.ini new file mode 100644 index 00000000000..479e35ea30f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-002.html.ini new file mode 100644 index 00000000000..1702b3f178b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-001.html.ini new file mode 100644 index 00000000000..b6622b3eb6c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-img-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-002.html.ini new file mode 100644 index 00000000000..9c60bdcc8f9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-img-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-001.html.ini new file mode 100644 index 00000000000..67fcee163ff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-img-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-002.html.ini new file mode 100644 index 00000000000..3c521c099f0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-img-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-001.html.ini new file mode 100644 index 00000000000..d1c9be58c0d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-002.html.ini new file mode 100644 index 00000000000..ff5a6d6e7e0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-001.html.ini new file mode 100644 index 00000000000..367e331ba6d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-002.html.ini new file mode 100644 index 00000000000..41c45c1e03c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-003.html.ini new file mode 100644 index 00000000000..e72daaeb0af --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-004.html.ini new file mode 100644 index 00000000000..eabc393b4b7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-001.html.ini new file mode 100644 index 00000000000..0af87606c84 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-002.html.ini new file mode 100644 index 00000000000..49bd354c76f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-003.html.ini new file mode 100644 index 00000000000..ab466a9b73e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-last-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-004.html.ini new file mode 100644 index 00000000000..51d85f43ff2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-rtl-last-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-001.html.ini new file mode 100644 index 00000000000..f290ad662c4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-002.html.ini new file mode 100644 index 00000000000..118bdaea123 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-003.html.ini new file mode 100644 index 00000000000..1be956f2a49 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-004.html.ini new file mode 100644 index 00000000000..382cfb8afae --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-001.html.ini new file mode 100644 index 00000000000..f16318e1590 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-002.html.ini new file mode 100644 index 00000000000..6dc1636a54a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-align-self-vertWM-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-001.html.ini new file mode 100644 index 00000000000..5420c112f90 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-002.html.ini new file mode 100644 index 00000000000..6a668517f94 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-001.html.ini new file mode 100644 index 00000000000..42952fa983b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-img-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-002.html.ini new file mode 100644 index 00000000000..6f722d18921 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-img-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-001.html.ini new file mode 100644 index 00000000000..b7a0e0cdedc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-img-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-002.html.ini new file mode 100644 index 00000000000..a4b0bbf9e47 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-img-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-001.html.ini new file mode 100644 index 00000000000..b5426eb443c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-002.html.ini new file mode 100644 index 00000000000..b63aef1f577 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-001.html.ini new file mode 100644 index 00000000000..d70360a04b0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-002.html.ini new file mode 100644 index 00000000000..0dc07538fed --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-003.html.ini new file mode 100644 index 00000000000..a30b469a35b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-004.html.ini new file mode 100644 index 00000000000..6c4fdbbcc1c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-001.html.ini new file mode 100644 index 00000000000..ffb06b9a7fa --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-002.html.ini new file mode 100644 index 00000000000..0d01fbc6438 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-003.html.ini new file mode 100644 index 00000000000..9aa2ac78c0f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-last-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-004.html.ini new file mode 100644 index 00000000000..0b2dc56cace --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-rtl-last-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-001.html.ini new file mode 100644 index 00000000000..8f8cac17739 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-002.html.ini new file mode 100644 index 00000000000..7cf8adf4bab --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-003.html.ini new file mode 100644 index 00000000000..5f27f3be2db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-004.html.ini new file mode 100644 index 00000000000..c74ec02fbd5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-001.html.ini new file mode 100644 index 00000000000..2acf2144699 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-last-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-002.html.ini new file mode 100644 index 00000000000..ae9f0fdf8d7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-last-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-003.html.ini new file mode 100644 index 00000000000..5773345c4f2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-last-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-004.html.ini new file mode 100644 index 00000000000..660bd509354 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-abspos-staticpos-justify-self-vertWM-last-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-paint-positioned-children-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-paint-positioned-children-001.html.ini new file mode 100644 index 00000000000..2ce5948665d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-paint-positioned-children-001.html.ini @@ -0,0 +1,2 @@ +[grid-paint-positioned-children-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-children-writing-modes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-children-writing-modes-001.html.ini new file mode 100644 index 00000000000..a7d531668b5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-children-writing-modes-001.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-children-writing-modes-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-001.html.ini new file mode 100644 index 00000000000..7e83b4286ee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-001.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-item-dynamic-change-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-002.html.ini new file mode 100644 index 00000000000..c36aedca9ed --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-002.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-item-dynamic-change-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-005.html.ini new file mode 100644 index 00000000000..af147286a3c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-005.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-item-dynamic-change-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-007.html.ini new file mode 100644 index 00000000000..403c53607d5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-item-dynamic-change-007.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-item-dynamic-change-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-001.html.ini new file mode 100644 index 00000000000..c88b42acb4a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-001.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-002.html.ini new file mode 100644 index 00000000000..ae945ea0eec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-002.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-002.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-003.html.ini new file mode 100644 index 00000000000..9b5e0c640f3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-003.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-004.html.ini new file mode 100644 index 00000000000..d49f50b9234 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-004.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-005.html.ini new file mode 100644 index 00000000000..f69fdd7b6a9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-005.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-005.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-006.html.ini new file mode 100644 index 00000000000..9e9c3eb7cdd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-006.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-006.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-007.html.ini new file mode 100644 index 00000000000..acf5221bcdf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-007.html.ini @@ -0,0 +1,3 @@ +[grid-positioned-items-and-autofit-tracks-007.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-001.html.ini new file mode 100644 index 00000000000..17a021f5e8b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-001.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-items-background-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-rtl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-rtl-001.html.ini new file mode 100644 index 00000000000..947229a6cff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-background-rtl-001.html.ini @@ -0,0 +1,2 @@ +[grid-positioned-items-background-rtl-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-001.html.ini new file mode 100644 index 00000000000..f4b96344b43 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-001.html.ini @@ -0,0 +1,144 @@ +[grid-positioned-items-content-alignment-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-rtl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-rtl-001.html.ini new file mode 100644 index 00000000000..8c47e0ed45b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-content-alignment-rtl-001.html.ini @@ -0,0 +1,162 @@ +[grid-positioned-items-content-alignment-rtl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 60] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-001.html.ini new file mode 100644 index 00000000000..f9ea996d7cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-001.html.ini @@ -0,0 +1,123 @@ +[grid-positioned-items-gaps-001.html] + [.grid 1] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002-rtl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002-rtl.html.ini new file mode 100644 index 00000000000..4cb6d41a0ba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002-rtl.html.ini @@ -0,0 +1,6 @@ +[grid-positioned-items-gaps-002-rtl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002.html.ini new file mode 100644 index 00000000000..e0762cd0d2b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-002.html.ini @@ -0,0 +1,6 @@ +[grid-positioned-items-gaps-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-rtl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-rtl-001.html.ini new file mode 100644 index 00000000000..13056360e7a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-gaps-rtl-001.html.ini @@ -0,0 +1,132 @@ +[grid-positioned-items-gaps-rtl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html.ini new file mode 100644 index 00000000000..5e5814ab8a5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html.ini @@ -0,0 +1,12 @@ +[grid-positioned-items-implicit-grid-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html.ini new file mode 100644 index 00000000000..fcd08b88322 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html.ini @@ -0,0 +1,12 @@ +[grid-positioned-items-implicit-grid-line-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini new file mode 100644 index 00000000000..2f30634fa9b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini @@ -0,0 +1,36 @@ +[grid-positioned-items-padding-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini new file mode 100644 index 00000000000..4099faa0520 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini @@ -0,0 +1,6 @@ +[grid-positioned-items-unknown-named-grid-line-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-within-grid-implicit-track-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-within-grid-implicit-track-001.html.ini new file mode 100644 index 00000000000..74e8e6bf021 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-positioned-items-within-grid-implicit-track-001.html.ini @@ -0,0 +1,48 @@ +[grid-positioned-items-within-grid-implicit-track-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-sizing-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-sizing-positioned-items-001.html.ini new file mode 100644 index 00000000000..9ad0958ba55 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/grid-sizing-positioned-items-001.html.ini @@ -0,0 +1,24 @@ +[grid-sizing-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-001.html.ini new file mode 100644 index 00000000000..db02f2a81bc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-001.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-002.html.ini new file mode 100644 index 00000000000..b39666beec6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-002.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-003.html.ini new file mode 100644 index 00000000000..4c235fa3590 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-003.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-004.html.ini new file mode 100644 index 00000000000..1b7924b13de --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-004.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-005.html.ini new file mode 100644 index 00000000000..3aa1126864c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-005.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-006.html.ini new file mode 100644 index 00000000000..d6bc673ca17 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-006.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-006.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-007.html.ini new file mode 100644 index 00000000000..8cfc68cb58e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-007.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-008.html.ini new file mode 100644 index 00000000000..a13ed8d8daf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-008.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-009.html.ini new file mode 100644 index 00000000000..ed240e177a7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-009.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-010.html.ini new file mode 100644 index 00000000000..8d1e80f2829 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-010.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-011.html.ini new file mode 100644 index 00000000000..86256bbec8b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-011.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-012.html.ini new file mode 100644 index 00000000000..0454c7baccc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-012.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-013.html.ini new file mode 100644 index 00000000000..2b3f5c04b8b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-013.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-013.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-014.html.ini new file mode 100644 index 00000000000..06d28eaa103 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-014.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-014.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015.html.ini new file mode 100644 index 00000000000..6db816171e5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015.html.ini @@ -0,0 +1,300 @@ +[orthogonal-positioned-grid-descendants-015.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-016.html.ini new file mode 100644 index 00000000000..9564468d796 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-descendants-016.html.ini @@ -0,0 +1,297 @@ +[orthogonal-positioned-grid-descendants-016.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-001.html.ini new file mode 100644 index 00000000000..7b780e5b201 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-001.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-002.html.ini new file mode 100644 index 00000000000..23f33586028 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-002.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-003.html.ini new file mode 100644 index 00000000000..d4be2ec032b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-003.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-004.html.ini new file mode 100644 index 00000000000..1d82ef134d6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-004.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-005.html.ini new file mode 100644 index 00000000000..0b75fe15c87 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-005.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-006.html.ini new file mode 100644 index 00000000000..c92d1739c37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-006.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-007.html.ini new file mode 100644 index 00000000000..f76d459b808 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-007.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-008.html.ini new file mode 100644 index 00000000000..4cc891d704b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-008.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-009.html.ini new file mode 100644 index 00000000000..ac2f70dcf25 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-009.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-010.html.ini new file mode 100644 index 00000000000..df5ec18faaa --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-010.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-011.html.ini new file mode 100644 index 00000000000..6296931943b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-011.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-012.html.ini new file mode 100644 index 00000000000..e4dc89aa6c8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-012.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-013.html.ini new file mode 100644 index 00000000000..88516f2b52c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-013.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-014.html.ini new file mode 100644 index 00000000000..a4ae2e18c09 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-014.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-015.html.ini new file mode 100644 index 00000000000..4d2c63e19f9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-015.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-016.html.ini new file mode 100644 index 00000000000..f2169f1e503 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-016.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-016.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-017.html.ini new file mode 100644 index 00000000000..6eddb6dab11 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/orthogonal-positioned-grid-items-017.html.ini @@ -0,0 +1,2 @@ +[orthogonal-positioned-grid-items-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-001.html.ini new file mode 100644 index 00000000000..ea2391177c4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-001.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-002.html.ini new file mode 100644 index 00000000000..9c95971e545 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-002.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-003.html.ini new file mode 100644 index 00000000000..2c3fed258bd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-003.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-004.html.ini new file mode 100644 index 00000000000..86f4e39b3ed --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-004.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-005.html.ini new file mode 100644 index 00000000000..d1fe870b823 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-005.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-006.html.ini new file mode 100644 index 00000000000..179c5665b2c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-006.html.ini @@ -0,0 +1,252 @@ +[positioned-grid-descendants-006.html] + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-007.html.ini new file mode 100644 index 00000000000..b6e5d76778d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-007.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-008.html.ini new file mode 100644 index 00000000000..a55c0efe125 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-008.html.ini @@ -0,0 +1,252 @@ +[positioned-grid-descendants-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-009.html.ini new file mode 100644 index 00000000000..e735b0e674d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-009.html.ini @@ -0,0 +1,252 @@ +[positioned-grid-descendants-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-010.html.ini new file mode 100644 index 00000000000..7a11909c7e7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-010.html.ini @@ -0,0 +1,300 @@ +[positioned-grid-descendants-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-011.html.ini new file mode 100644 index 00000000000..7af6be7533e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-011.html.ini @@ -0,0 +1,252 @@ +[positioned-grid-descendants-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 98] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-012.html.ini new file mode 100644 index 00000000000..e8dca3822d6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-012.html.ini @@ -0,0 +1,288 @@ +[positioned-grid-descendants-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-013.html.ini new file mode 100644 index 00000000000..505124b3d9c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-013.html.ini @@ -0,0 +1,288 @@ +[positioned-grid-descendants-013.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-014.html.ini new file mode 100644 index 00000000000..ca5dfe5dcbb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-014.html.ini @@ -0,0 +1,288 @@ +[positioned-grid-descendants-014.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-015.html.ini new file mode 100644 index 00000000000..719820b10c8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-015.html.ini @@ -0,0 +1,288 @@ +[positioned-grid-descendants-015.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-016.html.ini new file mode 100644 index 00000000000..6b0c806c9e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-016.html.ini @@ -0,0 +1,297 @@ +[positioned-grid-descendants-016.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 73] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 79] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 85] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 91] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 97] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-017.html.ini new file mode 100644 index 00000000000..e3e5c9ac46c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-descendants-017.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-descendants-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-001.html.ini new file mode 100644 index 00000000000..0c4f9fbff3b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-001.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-002.html.ini new file mode 100644 index 00000000000..a8f93fbed53 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-002.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-003.html.ini new file mode 100644 index 00000000000..9cd7ef012b5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-003.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-004.html.ini new file mode 100644 index 00000000000..0293df1b3ca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-004.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-005.html.ini new file mode 100644 index 00000000000..10e175d6fdc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-005.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-006.html.ini new file mode 100644 index 00000000000..2a2fa69a07e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-006.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-007.html.ini new file mode 100644 index 00000000000..127078afc1c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-007.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-008.html.ini new file mode 100644 index 00000000000..5a1160d1740 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-008.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-009.html.ini new file mode 100644 index 00000000000..553732f4357 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-009.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-010.html.ini new file mode 100644 index 00000000000..465d7cbad10 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-010.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-011.html.ini new file mode 100644 index 00000000000..080e8a262d0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-011.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-012.html.ini new file mode 100644 index 00000000000..bcca8edf05e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-012.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-013.html.ini new file mode 100644 index 00000000000..842e3aaa16c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-013.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-014.html.ini new file mode 100644 index 00000000000..b24aa0a4263 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-014.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-015.html.ini new file mode 100644 index 00000000000..e4a732b0a9e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-015.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-016.html.ini new file mode 100644 index 00000000000..6000deda508 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-016.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-016.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-017.html.ini new file mode 100644 index 00000000000..15acd45d3db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-017.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-018.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-018.html.ini new file mode 100644 index 00000000000..de440356e5e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-018.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-018.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-022.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-022.html.ini new file mode 100644 index 00000000000..a32305b14e9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-022.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-022.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-023.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-023.html.ini new file mode 100644 index 00000000000..c580c3dbc8b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-023.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-023.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-024.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-024.html.ini new file mode 100644 index 00000000000..5169b860e28 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-024.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-024.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-025.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-025.html.ini new file mode 100644 index 00000000000..daa8f6ce22e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-025.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-025.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-001.html.ini new file mode 100644 index 00000000000..ab30592bbdc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-001.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-negative-indices-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-003.html.ini new file mode 100644 index 00000000000..572ba072381 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-negative-indices-003.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-negative-indices-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html.ini new file mode 100644 index 00000000000..56567eb1746 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html.ini @@ -0,0 +1,3 @@ +[positioned-grid-items-should-not-create-implicit-tracks-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html.ini new file mode 100644 index 00000000000..6ef1b3e4da5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html.ini @@ -0,0 +1,36 @@ +[positioned-grid-items-should-not-take-up-space-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-sizing-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-sizing-001.html.ini new file mode 100644 index 00000000000..02265f0b081 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/abspos/positioned-grid-items-sizing-001.html.ini @@ -0,0 +1,2 @@ +[positioned-grid-items-sizing-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-001.html.ini new file mode 100644 index 00000000000..25530dbc848 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-001.html.ini @@ -0,0 +1,15 @@ +[grid-align-baseline-001.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL + + [#target > div 5] + expected: FAIL + + [#target > div 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-002.html.ini new file mode 100644 index 00000000000..15505055248 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-002.html.ini @@ -0,0 +1,15 @@ +[grid-align-baseline-002.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL + + [#target > div 5] + expected: FAIL + + [#target > div 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-003.html.ini new file mode 100644 index 00000000000..61dafc4ddfb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-003.html.ini @@ -0,0 +1,9 @@ +[grid-align-baseline-003.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-004.html.ini new file mode 100644 index 00000000000..21847677f82 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-004.html.ini @@ -0,0 +1,6 @@ +[grid-align-baseline-004.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-005.html.ini new file mode 100644 index 00000000000..4876aae00ac --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-005.html.ini @@ -0,0 +1,2 @@ +[grid-align-baseline-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-001.html.ini new file mode 100644 index 00000000000..a9a8cdfd701 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-001.html.ini @@ -0,0 +1,12 @@ +[grid-align-baseline-fieldset-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-002.html.ini new file mode 100644 index 00000000000..e886fc00b1f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-002.html.ini @@ -0,0 +1,6 @@ +[grid-align-baseline-fieldset-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-003.html.ini new file mode 100644 index 00000000000..eb97a5d2e17 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-fieldset-003.html.ini @@ -0,0 +1,6 @@ +[grid-align-baseline-fieldset-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-001.html.ini new file mode 100644 index 00000000000..c9a9c4211db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-001.html.ini @@ -0,0 +1,144 @@ +[grid-align-baseline-flex-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 14] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 16] + expected: FAIL + + [.target > * 17] + expected: FAIL + + [.target > * 18] + expected: FAIL + + [.target > * 19] + expected: FAIL + + [.target > * 20] + expected: FAIL + + [.target > * 21] + expected: FAIL + + [.target > * 22] + expected: FAIL + + [.target > * 23] + expected: FAIL + + [.target > * 24] + expected: FAIL + + [.target > * 25] + expected: FAIL + + [.target > * 26] + expected: FAIL + + [.target > * 27] + expected: FAIL + + [.target > * 28] + expected: FAIL + + [.target > * 29] + expected: FAIL + + [.target > * 30] + expected: FAIL + + [.target > * 31] + expected: FAIL + + [.target > * 32] + expected: FAIL + + [.target > * 33] + expected: FAIL + + [.target > * 34] + expected: FAIL + + [.target > * 35] + expected: FAIL + + [.target > * 36] + expected: FAIL + + [.target > * 37] + expected: FAIL + + [.target > * 38] + expected: FAIL + + [.target > * 39] + expected: FAIL + + [.target > * 40] + expected: FAIL + + [.target > * 41] + expected: FAIL + + [.target > * 42] + expected: FAIL + + [.target > * 43] + expected: FAIL + + [.target > * 44] + expected: FAIL + + [.target > * 45] + expected: FAIL + + [.target > * 46] + expected: FAIL + + [.target > * 47] + expected: FAIL + + [.target > * 48] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-002.html.ini new file mode 100644 index 00000000000..cd5a687a3c2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-002.html.ini @@ -0,0 +1,72 @@ +[grid-align-baseline-flex-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 17] + expected: FAIL + + [.target > * 19] + expected: FAIL + + [.target > * 21] + expected: FAIL + + [.target > * 23] + expected: FAIL + + [.target > * 25] + expected: FAIL + + [.target > * 27] + expected: FAIL + + [.target > * 29] + expected: FAIL + + [.target > * 31] + expected: FAIL + + [.target > * 33] + expected: FAIL + + [.target > * 35] + expected: FAIL + + [.target > * 37] + expected: FAIL + + [.target > * 39] + expected: FAIL + + [.target > * 41] + expected: FAIL + + [.target > * 43] + expected: FAIL + + [.target > * 45] + expected: FAIL + + [.target > * 47] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-003.html.ini new file mode 100644 index 00000000000..722a35180ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-003.html.ini @@ -0,0 +1,48 @@ +[grid-align-baseline-flex-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 14] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-004.html.ini new file mode 100644 index 00000000000..6f55c851f6d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-flex-004.html.ini @@ -0,0 +1,24 @@ +[grid-align-baseline-flex-004.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 15] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-001.html.ini new file mode 100644 index 00000000000..ce4382ad3ab --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-001.html.ini @@ -0,0 +1,36 @@ +[grid-align-baseline-grid-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-002.html.ini new file mode 100644 index 00000000000..caccb13ff47 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-002.html.ini @@ -0,0 +1,18 @@ +[grid-align-baseline-grid-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-003.html.ini new file mode 100644 index 00000000000..4f1609157fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-grid-003.html.ini @@ -0,0 +1,18 @@ +[grid-align-baseline-grid-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-001.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-001.tentative.html.ini new file mode 100644 index 00000000000..935d59245b9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-001.tentative.html.ini @@ -0,0 +1,72 @@ +[grid-align-baseline-line-clamp-001.tentative.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 14] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 16] + expected: FAIL + + [.target > * 17] + expected: FAIL + + [.target > * 18] + expected: FAIL + + [.target > * 19] + expected: FAIL + + [.target > * 20] + expected: FAIL + + [.target > * 21] + expected: FAIL + + [.target > * 22] + expected: FAIL + + [.target > * 23] + expected: FAIL + + [.target > * 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-002.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-002.tentative.html.ini new file mode 100644 index 00000000000..5f6207a47e8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-002.tentative.html.ini @@ -0,0 +1,36 @@ +[grid-align-baseline-line-clamp-002.tentative.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 17] + expected: FAIL + + [.target > * 19] + expected: FAIL + + [.target > * 21] + expected: FAIL + + [.target > * 23] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-003.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-003.tentative.html.ini new file mode 100644 index 00000000000..444e403f490 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-line-clamp-003.tentative.html.ini @@ -0,0 +1,36 @@ +[grid-align-baseline-line-clamp-003.tentative.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 13] + expected: FAIL + + [.target > * 15] + expected: FAIL + + [.target > * 17] + expected: FAIL + + [.target > * 19] + expected: FAIL + + [.target > * 21] + expected: FAIL + + [.target > * 23] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-001.html.ini new file mode 100644 index 00000000000..cb7ea8add36 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-001.html.ini @@ -0,0 +1,36 @@ +[grid-align-baseline-multicol-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-002.html.ini new file mode 100644 index 00000000000..50c6dbce9bb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-002.html.ini @@ -0,0 +1,18 @@ +[grid-align-baseline-multicol-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-003.html.ini new file mode 100644 index 00000000000..74551144173 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-multicol-003.html.ini @@ -0,0 +1,18 @@ +[grid-align-baseline-multicol-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-001.html.ini new file mode 100644 index 00000000000..66140f95543 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-001.html.ini @@ -0,0 +1,30 @@ +[grid-align-baseline-overflow-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 10] + expected: FAIL + + [.target > * 11] + expected: FAIL + + [.target > * 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-002.html.ini new file mode 100644 index 00000000000..fa3b5ee1c83 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-002.html.ini @@ -0,0 +1,15 @@ +[grid-align-baseline-overflow-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 10] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-003.html.ini new file mode 100644 index 00000000000..5e35745eec7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-overflow-003.html.ini @@ -0,0 +1,15 @@ +[grid-align-baseline-overflow-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 8] + expected: FAIL + + [.target > * 9] + expected: FAIL + + [.target > * 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-001.html.ini new file mode 100644 index 00000000000..c05db7e5e3e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-001.html.ini @@ -0,0 +1,24 @@ +[grid-align-baseline-table-001.html] + [.target > * 1] + expected: FAIL + + [.target > * 2] + expected: FAIL + + [.target > * 3] + expected: FAIL + + [.target > * 4] + expected: FAIL + + [.target > * 5] + expected: FAIL + + [.target > * 6] + expected: FAIL + + [.target > * 7] + expected: FAIL + + [.target > * 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-002.html.ini new file mode 100644 index 00000000000..5e0b2b36e6d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-002.html.ini @@ -0,0 +1,6 @@ +[grid-align-baseline-table-002.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-003.html.ini new file mode 100644 index 00000000000..5d52530f7b7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-table-003.html.ini @@ -0,0 +1,6 @@ +[grid-align-baseline-table-003.html] + [.target > * 1] + expected: FAIL + + [.target > * 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-vertical.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-vertical.html.ini new file mode 100644 index 00000000000..a8a2e279086 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline-vertical.html.ini @@ -0,0 +1,18 @@ +[grid-align-baseline-vertical.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [Additional Check 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline.html.ini new file mode 100644 index 00000000000..385af34bfeb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-baseline.html.ini @@ -0,0 +1,27 @@ +[grid-align-baseline.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [Additional Check 1] + expected: FAIL + + [Additional Check 2] + expected: FAIL + + [Additional Check 3] + expected: FAIL + + [Additional Check 4] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html.ini index 47935a7a5d0..c51d89e8465 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html.ini @@ -1,78 +1,72 @@ -[2d.composite.grid.filter.no_shadow.pattern.worker.html] - [2d] +[grid-align-content-distribution-vertical-lr.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] + [.grid 24] expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html.ini index f430bd98558..e7cc602f6d9 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html.ini @@ -1,78 +1,72 @@ -[2d.composite.grid.filter.shadow.drawImage.worker.html] - [2d] +[grid-align-content-distribution-vertical-rl.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] + [.grid 24] expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution.html.ini index 79398738220..9693178ecd2 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-distribution.html.ini @@ -1,78 +1,72 @@ -[2d.composite.grid.filter.shadow.pattern.worker.html] - [2d] +[grid-align-content-distribution.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] + [.grid 24] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-lr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-lr.html.ini new file mode 100644 index 00000000000..338410faee9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-lr.html.ini @@ -0,0 +1,18 @@ +[grid-align-content-vertical-lr.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-rl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-rl.html.ini new file mode 100644 index 00000000000..90fe1608276 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content-vertical-rl.html.ini @@ -0,0 +1,18 @@ +[grid-align-content-vertical-rl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content.html.ini new file mode 100644 index 00000000000..c8e2aca0e8a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-content.html.ini @@ -0,0 +1,39 @@ +[grid-align-content.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html.ini new file mode 100644 index 00000000000..2ec6eb42d43 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html.ini @@ -0,0 +1,54 @@ +[grid-align-justify-margin-border-padding-vertical-lr.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html.ini new file mode 100644 index 00000000000..983c3df6a2a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html.ini @@ -0,0 +1,54 @@ +[grid-align-justify-margin-border-padding-vertical-rl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding.html.ini new file mode 100644 index 00000000000..0b9abf1052e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-margin-border-padding.html.ini @@ -0,0 +1,54 @@ +[grid-align-justify-margin-border-padding.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-overflow.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-overflow.html.ini new file mode 100644 index 00000000000..8b2d9a5b8f1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-overflow.html.ini @@ -0,0 +1,24 @@ +[grid-align-justify-overflow.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html.ini new file mode 100644 index 00000000000..ea0fcf04aeb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html.ini @@ -0,0 +1,24 @@ +[grid-align-justify-stretch-with-orthogonal-flows.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch.html.ini new file mode 100644 index 00000000000..04176dfc8a5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-justify-stretch.html.ini @@ -0,0 +1,48 @@ +[grid-align-justify-stretch.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-stretching-replaced-items.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-stretching-replaced-items.html.ini new file mode 100644 index 00000000000..5a9abf449f6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align-stretching-replaced-items.html.ini @@ -0,0 +1,3 @@ +[grid-align-stretching-replaced-items.html] + [.grid 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align.html.ini new file mode 100644 index 00000000000..9fbbf317852 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-align.html.ini @@ -0,0 +1,48 @@ +[grid-align.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-001.html.ini new file mode 100644 index 00000000000..ee603acf060 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-001.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-001.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-002.html.ini new file mode 100644 index 00000000000..a6c22912cdf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-002.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-002.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-003.html.ini new file mode 100644 index 00000000000..8eb8edb523d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-003.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-003.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-004.html.ini new file mode 100644 index 00000000000..f5de5114ba9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-004.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-004.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-005.html.ini new file mode 100644 index 00000000000..dbffd57624f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-005.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-005.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-006.html.ini new file mode 100644 index 00000000000..bbdae1d8d3b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-006.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-006.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-007.html.ini new file mode 100644 index 00000000000..1f03c343e7a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-007.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-007.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-008.html.ini new file mode 100644 index 00000000000..54c766d31bb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-008.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-008.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-009.html.ini new file mode 100644 index 00000000000..5eebd8899db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-009.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-009.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-010.html.ini new file mode 100644 index 00000000000..b8708c98987 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-010.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-010.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-011.html.ini new file mode 100644 index 00000000000..dac7535e882 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-011.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-011.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-012.html.ini new file mode 100644 index 00000000000..1c61cc4833a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-012.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-012.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-013.html.ini new file mode 100644 index 00000000000..33f3a60c0cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-013.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-013.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-014.html.ini new file mode 100644 index 00000000000..dfa9f98a58b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-014.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-014.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-017.html.ini new file mode 100644 index 00000000000..790af09bee8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-017.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-017.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-018.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-018.html.ini new file mode 100644 index 00000000000..6c33efb9667 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-018.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-018.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-019.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-019.html.ini new file mode 100644 index 00000000000..bf4735d75cc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-019.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-019.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-020.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-020.html.ini new file mode 100644 index 00000000000..2a020765488 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-020.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-020.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-021.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-021.html.ini new file mode 100644 index 00000000000..0b696f2b113 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-021.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-021.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-022.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-022.html.ini new file mode 100644 index 00000000000..e9857292ec6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-022.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-022.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-023.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-023.html.ini new file mode 100644 index 00000000000..26f47b28c39 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-023.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-023.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-024.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-024.html.ini new file mode 100644 index 00000000000..bc7e0a0ec72 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-024.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-024.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-025.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-025.html.ini new file mode 100644 index 00000000000..154b0d739bf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-025.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-025.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-026.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-026.html.ini new file mode 100644 index 00000000000..6e09bb47666 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-026.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-026.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-027.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-027.html.ini new file mode 100644 index 00000000000..8cf576e1b8c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-027.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-027.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-028.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-028.html.ini new file mode 100644 index 00000000000..2e683c7b616 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-028.html.ini @@ -0,0 +1,6 @@ +[grid-alignment-implies-size-change-028.html] + [.before 1] + expected: FAIL + + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-029.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-029.html.ini new file mode 100644 index 00000000000..97bc9a5d1b4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-029.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-029.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-030.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-030.html.ini new file mode 100644 index 00000000000..7edad3d3815 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-030.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-030.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-031.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-031.html.ini new file mode 100644 index 00000000000..d635ed4f26c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-031.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-031.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-032.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-032.html.ini new file mode 100644 index 00000000000..a1ff2cf026a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-032.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-032.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-035.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-035.html.ini new file mode 100644 index 00000000000..8d9c664c0bd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-035.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-035.html] + [.after 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-036.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-036.html.ini new file mode 100644 index 00000000000..31f1b787e3d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-implies-size-change-036.html.ini @@ -0,0 +1,3 @@ +[grid-alignment-implies-size-change-036.html] + [.before 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-001.html.ini new file mode 100644 index 00000000000..44f1d4974a0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-001.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-001.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-002.html.ini new file mode 100644 index 00000000000..4dfe925977a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-002.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-002.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-003.html.ini new file mode 100644 index 00000000000..38c5d96356f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-003.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-003.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-004.html.ini new file mode 100644 index 00000000000..2b321eda9e4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-004.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-004.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-005.html.ini new file mode 100644 index 00000000000..2722f421460 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-005.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-005.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-006.html.ini new file mode 100644 index 00000000000..73a1bdb8803 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-006.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-006.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-007.html.ini new file mode 100644 index 00000000000..2d237b5af39 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-007.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-007.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-008.html.ini new file mode 100644 index 00000000000..1f09625b7a2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-alignment-style-changes-008.html.ini @@ -0,0 +1,18 @@ +[grid-alignment-style-changes-008.html] + [.before 1] + expected: FAIL + + [.before 2] + expected: FAIL + + [.before 3] + expected: FAIL + + [.after 4] + expected: FAIL + + [.after 5] + expected: FAIL + + [.after 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-001.html.ini new file mode 100644 index 00000000000..65979622a7e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-002.html.ini new file mode 100644 index 00000000000..c14e03a1f61 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-003.html.ini new file mode 100644 index 00000000000..915c2280520 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-004.html.ini new file mode 100644 index 00000000000..06470fb8737 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-004.html.ini @@ -0,0 +1,54 @@ +[grid-baseline-004.html] + [.grid, container 1] + expected: FAIL + + [.grid, container 2] + expected: FAIL + + [.grid, container 3] + expected: FAIL + + [.grid, container 4] + expected: FAIL + + [.grid, container 5] + expected: FAIL + + [.grid, container 6] + expected: FAIL + + [.grid, container 7] + expected: FAIL + + [.grid, container 8] + expected: FAIL + + [.grid, container 9] + expected: FAIL + + [.grid, container 10] + expected: FAIL + + [.grid, container 11] + expected: FAIL + + [.grid, container 12] + expected: FAIL + + [.grid, container 13] + expected: FAIL + + [.grid, container 14] + expected: FAIL + + [.grid, container 15] + expected: FAIL + + [.grid, container 16] + expected: FAIL + + [.grid, container 17] + expected: FAIL + + [.grid, container 18] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-align-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-align-001.html.ini new file mode 100644 index 00000000000..fbc10e13823 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-align-001.html.ini @@ -0,0 +1,2 @@ +[grid-baseline-align-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-justify-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-justify-001.html.ini new file mode 100644 index 00000000000..68eb98eb2a4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-baseline-justify-001.html.ini @@ -0,0 +1,2 @@ +[grid-baseline-justify-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html.ini new file mode 100644 index 00000000000..75d9920f46f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-001.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html.ini new file mode 100644 index 00000000000..932379d26ff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-002.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html.ini new file mode 100644 index 00000000000..0802789bca5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-003.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html.ini new file mode 100644 index 00000000000..51305731fa0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-004.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html.ini new file mode 100644 index 00000000000..1d9efc3afbf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-005.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html.ini new file mode 100644 index 00000000000..a8034499983 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-006.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html.ini new file mode 100644 index 00000000000..8d2b059971a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html.ini @@ -0,0 +1,6 @@ +[grid-block-axis-alignment-auto-margins-007.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html.ini new file mode 100644 index 00000000000..e0b238ea50c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html.ini new file mode 100644 index 00000000000..d3d22abfa97 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html.ini new file mode 100644 index 00000000000..e9a4892d631 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html.ini new file mode 100644 index 00000000000..32dca60c916 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html.ini new file mode 100644 index 00000000000..8cd406c66fb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html.ini new file mode 100644 index 00000000000..a3ccd41f149 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-006.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html.ini new file mode 100644 index 00000000000..d16ee37d40c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html.ini new file mode 100644 index 00000000000..dffaef328e1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html.ini new file mode 100644 index 00000000000..bc019123c1b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html.ini new file mode 100644 index 00000000000..7cab4aa2621 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html.ini new file mode 100644 index 00000000000..573177c892d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html.ini new file mode 100644 index 00000000000..b2455a44d2f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html.ini new file mode 100644 index 00000000000..d41c83a6a4a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-013.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html.ini new file mode 100644 index 00000000000..f86e1e55a69 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-014.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html.ini new file mode 100644 index 00000000000..73a617b8a8f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-015.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html.ini new file mode 100644 index 00000000000..44da8f647a6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-016.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html.ini new file mode 100644 index 00000000000..6e2b0361490 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-alignment-positioned-items-017.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-001.html.ini new file mode 100644 index 00000000000..354579885d4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-001.html.ini @@ -0,0 +1,6 @@ +[grid-column-axis-alignment-sticky-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-002.html.ini new file mode 100644 index 00000000000..10eb51fdf1f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-002.html.ini @@ -0,0 +1,6 @@ +[grid-column-axis-alignment-sticky-positioned-items-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html.ini new file mode 100644 index 00000000000..35a1a71456f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html.ini @@ -0,0 +1,12 @@ +[grid-column-axis-self-baseline-synthesized-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html.ini new file mode 100644 index 00000000000..0181b3cb097 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html.ini @@ -0,0 +1,9 @@ +[grid-column-axis-self-baseline-synthesized-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html.ini new file mode 100644 index 00000000000..5658d7633b3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html.ini @@ -0,0 +1,9 @@ +[grid-column-axis-self-baseline-synthesized-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html.ini new file mode 100644 index 00000000000..2a76dd17a3d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html.ini @@ -0,0 +1,9 @@ +[grid-column-axis-self-baseline-synthesized-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-005.html.ini new file mode 100644 index 00000000000..9b34c4da14a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-005.html.ini @@ -0,0 +1,6 @@ +[grid-column-axis-self-baseline-synthesized-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-auto-margins-scrollbars-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-auto-margins-scrollbars-001.html.ini new file mode 100644 index 00000000000..2c93394b754 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-auto-margins-scrollbars-001.html.ini @@ -0,0 +1,2 @@ +[grid-container-auto-margins-scrollbars-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-baseline-001.html.ini new file mode 100644 index 00000000000..70e2d8f04ac --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-container-baseline-001.html.ini @@ -0,0 +1,21 @@ +[grid-container-baseline-001.html] + [.wrapper 1] + expected: FAIL + + [.wrapper 2] + expected: FAIL + + [.wrapper 3] + expected: FAIL + + [.wrapper 8] + expected: FAIL + + [.wrapper 9] + expected: FAIL + + [.wrapper 10] + expected: FAIL + + [.wrapper 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-001.html.ini new file mode 100644 index 00000000000..f9d1a8f04c4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-001.html.ini @@ -0,0 +1,72 @@ +[grid-content-alignment-and-self-alignment-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-002.html.ini new file mode 100644 index 00000000000..a3f532d72bb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-and-self-alignment-002.html.ini @@ -0,0 +1,96 @@ +[grid-content-alignment-and-self-alignment-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-auto-sized-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-auto-sized-tracks-001.html.ini new file mode 100644 index 00000000000..19af1962463 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-auto-sized-tracks-001.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-auto-sized-tracks-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-001.html.ini new file mode 100644 index 00000000000..2ebdda05fa4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-001.html.ini @@ -0,0 +1,42 @@ +[grid-content-alignment-overflow-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-002.html.ini new file mode 100644 index 00000000000..1bfa8d90e7c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-overflow-002.html.ini @@ -0,0 +1,42 @@ +[grid-content-alignment-overflow-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-001.html.ini new file mode 100644 index 00000000000..31fed162922 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-001.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-second-pass-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-002.html.ini new file mode 100644 index 00000000000..c6bbd275dc4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-second-pass-002.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-second-pass-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-abspos-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-abspos-001.html.ini new file mode 100644 index 00000000000..efff2a2620a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-abspos-001.html.ini @@ -0,0 +1,3 @@ +[grid-content-alignment-with-abspos-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-001.html.ini new file mode 100644 index 00000000000..cb310e22ffd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-001.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-with-span-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-lr-001.html.ini new file mode 100644 index 00000000000..a782dc46012 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-lr-001.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-with-span-vertical-lr-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-rl-001.html.ini new file mode 100644 index 00000000000..4be35fa9acf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-alignment-with-span-vertical-rl-001.html.ini @@ -0,0 +1,24 @@ +[grid-content-alignment-with-span-vertical-rl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-001.html.ini new file mode 100644 index 00000000000..107cc4d8915 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-001.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-002.html.ini new file mode 100644 index 00000000000..ee2204ae95b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-002.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-003.html.ini new file mode 100644 index 00000000000..c8bd3940132 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-003.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-004.html.ini new file mode 100644 index 00000000000..4630d4e85e2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-004.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-005.html.ini new file mode 100644 index 00000000000..848f6b87eb2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-005.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-006.html.ini new file mode 100644 index 00000000000..bda4b27a5cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-006.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-007.html.ini new file mode 100644 index 00000000000..6a6ee607045 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-007.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-008.html.ini new file mode 100644 index 00000000000..35764403fa0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-008.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-009.html.ini new file mode 100644 index 00000000000..54a7ab7d3a2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-009.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-010.html.ini new file mode 100644 index 00000000000..be13034100d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-010.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-011.html.ini new file mode 100644 index 00000000000..99266cf94a5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-011.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-012.html.ini new file mode 100644 index 00000000000..c83a6a2ed56 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-012.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-013.html.ini new file mode 100644 index 00000000000..c7cacfbf34f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-013.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-014.html.ini new file mode 100644 index 00000000000..27c6c122b8c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-014.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-015.html.ini new file mode 100644 index 00000000000..7ca25f641be --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-015.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-016.html.ini new file mode 100644 index 00000000000..7981c7ff690 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-016.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-016.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-017.html.ini new file mode 100644 index 00000000000..20c6a9aac5a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-017.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-018.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-018.html.ini new file mode 100644 index 00000000000..cc7a98f2579 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-018.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-018.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-019.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-019.html.ini new file mode 100644 index 00000000000..3e0f0db48b4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-019.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-019.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-020.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-020.html.ini new file mode 100644 index 00000000000..8c0b5a5562f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-020.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-020.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-021.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-021.html.ini new file mode 100644 index 00000000000..296880bb407 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-021.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-021.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-022.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-022.html.ini new file mode 100644 index 00000000000..cf46f8d3807 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-022.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-022.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-023.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-023.html.ini new file mode 100644 index 00000000000..3a336494acc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-023.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-023.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-024.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-024.html.ini new file mode 100644 index 00000000000..430ffdd4636 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-024.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-024.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-025.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-025.html.ini new file mode 100644 index 00000000000..67634c1a51e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-025.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-025.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-001.html.ini new file mode 100644 index 00000000000..37f1fd1547f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-001.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-002.html.ini new file mode 100644 index 00000000000..be0e0f0c69a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-002.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-003.html.ini new file mode 100644 index 00000000000..a0403fceef8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-003.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-004.html.ini new file mode 100644 index 00000000000..e3cba57befa --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-004.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-005.html.ini new file mode 100644 index 00000000000..2028fb699ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-005.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-006.html.ini new file mode 100644 index 00000000000..cb8732a54a2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-006.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-007.html.ini new file mode 100644 index 00000000000..6ea324fc944 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-007.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-008.html.ini new file mode 100644 index 00000000000..740b879cad5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-008.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-009.html.ini new file mode 100644 index 00000000000..90df34fd254 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-009.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-010.html.ini new file mode 100644 index 00000000000..65d546ab861 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-010.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-011.html.ini new file mode 100644 index 00000000000..98a6dd45d5c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-011.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-012.html.ini new file mode 100644 index 00000000000..30616673339 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-012.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-013.html.ini new file mode 100644 index 00000000000..13d3b3f1bfb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-013.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-014.html.ini new file mode 100644 index 00000000000..4ea957d0b44 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-014.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-015.html.ini new file mode 100644 index 00000000000..cf9ba557cb4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-015.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-016.html.ini new file mode 100644 index 00000000000..439d76f3fc2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-016.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-016.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-017.html.ini new file mode 100644 index 00000000000..0b81b20e005 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-017.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-018.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-018.html.ini new file mode 100644 index 00000000000..6db39a34da8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-018.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-018.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-019.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-019.html.ini new file mode 100644 index 00000000000..4e5d21fbb09 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-019.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-019.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-020.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-020.html.ini new file mode 100644 index 00000000000..ec0d3ec86ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-020.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-020.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-021.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-021.html.ini new file mode 100644 index 00000000000..504241069a8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-021.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-021.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-022.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-022.html.ini new file mode 100644 index 00000000000..ee1b87bb4ed --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-022.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-022.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-023.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-023.html.ini new file mode 100644 index 00000000000..7cc28e4bc7b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-023.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-023.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-024.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-024.html.ini new file mode 100644 index 00000000000..57a764b4350 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-content-distribution-with-collapsed-tracks-024.html.ini @@ -0,0 +1,2 @@ +[grid-content-distribution-with-collapsed-tracks-024.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html.ini new file mode 100644 index 00000000000..3bd61d1ae4d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html.ini @@ -0,0 +1,108 @@ +[grid-fit-content-tracks-dont-stretch-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-001.html.ini new file mode 100644 index 00000000000..0b6903ccb95 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-001.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-002.html.ini new file mode 100644 index 00000000000..ffc2d9bdd20 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-002.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-003.html.ini new file mode 100644 index 00000000000..44bb08096a8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-003.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-004.html.ini new file mode 100644 index 00000000000..efaf06dd9d9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-004.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-005.html.ini new file mode 100644 index 00000000000..c0ae0d07584 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-005.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-006.html.ini new file mode 100644 index 00000000000..ad9f89d1847 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-006.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-007.html.ini new file mode 100644 index 00000000000..33a4f329b0b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-007.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-008.html.ini new file mode 100644 index 00000000000..d1a4fcbe633 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-008.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-009.html.ini new file mode 100644 index 00000000000..10d5a3a4640 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-009.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-010.html.ini new file mode 100644 index 00000000000..5636ad53c03 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-010.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-011.html.ini new file mode 100644 index 00000000000..8e6bf1d943f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-011.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-012.html.ini new file mode 100644 index 00000000000..10228233b3c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-012.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-013.html.ini new file mode 100644 index 00000000000..dc2966f85cd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-013.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-014.html.ini new file mode 100644 index 00000000000..1429e7e04d9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-014.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-015.html.ini new file mode 100644 index 00000000000..01fa5d5c83d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-015.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-016.html.ini new file mode 100644 index 00000000000..5595aa4b815 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-016.html.ini @@ -0,0 +1,2 @@ +[grid-gutters-016.html] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-and-alignment.html.ini index b864accf02f..7ae5eec44fc 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-gutters-and-alignment.html.ini @@ -1,78 +1,75 @@ -[2d.composite.grid.filter.no_shadow.drawImage.worker.html] - [2d] +[grid-gutters-and-alignment.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] + [.grid 24] expected: FAIL - [2d 24] - expected: FAIL - - [2d 25] + [.grid 25] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html.ini new file mode 100644 index 00000000000..3f4e30d3dbb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-001.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html.ini new file mode 100644 index 00000000000..dff53b156f0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-002.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html.ini new file mode 100644 index 00000000000..49d082486f9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-003.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html.ini new file mode 100644 index 00000000000..a597d52d1f6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-004.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html.ini new file mode 100644 index 00000000000..7de55089840 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-005.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html.ini new file mode 100644 index 00000000000..076d3f32c51 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-006.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html.ini new file mode 100644 index 00000000000..15c698228f8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html.ini @@ -0,0 +1,6 @@ +[grid-inline-axis-alignment-auto-margins-007.html] + [#grid 1] + expected: FAIL + + [#grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-baseline.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-baseline.html.ini new file mode 100644 index 00000000000..d49348abaef --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-inline-baseline.html.ini @@ -0,0 +1,2 @@ +[grid-inline-baseline.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html.ini new file mode 100644 index 00000000000..b18a77effd6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html.ini @@ -0,0 +1,12 @@ +[grid-item-alignment-with-orthogonal-flows-vertical-lr.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html.ini new file mode 100644 index 00000000000..c29c2d57ed5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html.ini @@ -0,0 +1,12 @@ +[grid-item-alignment-with-orthogonal-flows-vertical-rl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html.ini new file mode 100644 index 00000000000..e764ab71db8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html.ini @@ -0,0 +1,21 @@ +[grid-item-alignment-with-orthogonal-flows.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-001.html.ini new file mode 100644 index 00000000000..195a05ce9e7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-001.html.ini @@ -0,0 +1,60 @@ +[grid-item-aspect-ratio-justify-self-001.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL + + [.item 13] + expected: FAIL + + [.item 14] + expected: FAIL + + [.item 15] + expected: FAIL + + [.item 16] + expected: FAIL + + [.item 17] + expected: FAIL + + [.item 18] + expected: FAIL + + [.item 19] + expected: FAIL + + [.item 20] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-002.html.ini new file mode 100644 index 00000000000..cb276e98604 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-justify-self-002.html.ini @@ -0,0 +1,60 @@ +[grid-item-aspect-ratio-justify-self-002.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL + + [.item 13] + expected: FAIL + + [.item 14] + expected: FAIL + + [.item 15] + expected: FAIL + + [.item 16] + expected: FAIL + + [.item 17] + expected: FAIL + + [.item 18] + expected: FAIL + + [.item 19] + expected: FAIL + + [.item 20] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-1.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-1.html.ini new file mode 100644 index 00000000000..11f47a434cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-1.html.ini @@ -0,0 +1,2 @@ +[grid-item-aspect-ratio-stretch-1.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-2.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-2.html.ini new file mode 100644 index 00000000000..d0bd55478eb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-2.html.ini @@ -0,0 +1,2 @@ +[grid-item-aspect-ratio-stretch-2.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-3.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-3.html.ini new file mode 100644 index 00000000000..9c2f09879ec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-3.html.ini @@ -0,0 +1,2 @@ +[grid-item-aspect-ratio-stretch-3.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-4.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-4.html.ini new file mode 100644 index 00000000000..55772ec4056 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-aspect-ratio-stretch-4.html.ini @@ -0,0 +1,2 @@ +[grid-item-aspect-ratio-stretch-4.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html.ini new file mode 100644 index 00000000000..9db65bd1eec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html.ini @@ -0,0 +1,24 @@ +[grid-item-auto-margins-alignment-vertical-lr.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html.ini new file mode 100644 index 00000000000..1282ef95bb7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html.ini @@ -0,0 +1,24 @@ +[grid-item-auto-margins-alignment-vertical-rl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment.html.ini new file mode 100644 index 00000000000..4634c388323 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-auto-margins-alignment.html.ini @@ -0,0 +1,24 @@ +[grid-item-auto-margins-alignment.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-001.html.ini new file mode 100644 index 00000000000..ff4aee80787 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-item-content-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-002.html.ini new file mode 100644 index 00000000000..48e15df8cab --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-item-content-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-003.html.ini new file mode 100644 index 00000000000..c0aa3c9077b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-item-content-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-004.html.ini new file mode 100644 index 00000000000..185b98154ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-content-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-item-content-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-001.html.ini new file mode 100644 index 00000000000..c9ee8f0d818 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-item-mixed-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini new file mode 100644 index 00000000000..d27ce1b0c33 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-item-mixed-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-003.html.ini new file mode 100644 index 00000000000..b7fb97447a0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-item-mixed-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-004.html.ini new file mode 100644 index 00000000000..8bf91f61edd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-mixed-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-item-mixed-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-1.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-1.html.ini new file mode 100644 index 00000000000..f04b6340396 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-1.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-1.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-2.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-2.html.ini new file mode 100644 index 00000000000..1866d16952b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-2.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-2.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-3.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-3.html.ini new file mode 100644 index 00000000000..d48000be7d1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-3.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-3.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-4.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-4.html.ini new file mode 100644 index 00000000000..2b551dbabca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-4.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-4.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-5.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-5.html.ini new file mode 100644 index 00000000000..f71f9efe3c5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-5.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-5.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-6.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-6.html.ini new file mode 100644 index 00000000000..9ee9cce78ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-item-no-aspect-ratio-stretch-6.html.ini @@ -0,0 +1,2 @@ +[grid-item-no-aspect-ratio-stretch-6.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-002.html.ini new file mode 100644 index 00000000000..386a233dc6c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-002.html.ini @@ -0,0 +1,15 @@ +[grid-justify-baseline-002.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL + + [#target > div 5] + expected: FAIL + + [#target > div 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-003.html.ini new file mode 100644 index 00000000000..87e709f10ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-003.html.ini @@ -0,0 +1,9 @@ +[grid-justify-baseline-003.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-004.html.ini new file mode 100644 index 00000000000..75ad75fcdcc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-004.html.ini @@ -0,0 +1,9 @@ +[grid-justify-baseline-004.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-005.html.ini new file mode 100644 index 00000000000..23eb6eb259d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-justify-baseline-005.html.ini @@ -0,0 +1,9 @@ +[grid-justify-baseline-005.html] + [#target > div 1] + expected: FAIL + + [#target > div 2] + expected: FAIL + + [#target > div 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-place-content-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-place-content-001.html.ini new file mode 100644 index 00000000000..f1231d57087 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-place-content-001.html.ini @@ -0,0 +1,30 @@ +[grid-place-content-001.html] + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 20] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html.ini new file mode 100644 index 00000000000..c1b9f65182a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html.ini new file mode 100644 index 00000000000..d4fa1cc361e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html.ini new file mode 100644 index 00000000000..6e11dc562f4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html.ini new file mode 100644 index 00000000000..9d9c5c1f8ee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html.ini new file mode 100644 index 00000000000..ba1587b4e08 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html.ini new file mode 100644 index 00000000000..d5501cc09c6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-006.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html.ini new file mode 100644 index 00000000000..5dd679db202 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html.ini new file mode 100644 index 00000000000..0aa49b47ec9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html.ini new file mode 100644 index 00000000000..d8f40cc55d7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html.ini new file mode 100644 index 00000000000..d683b0f3715 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html.ini new file mode 100644 index 00000000000..5908879dc9a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html.ini new file mode 100644 index 00000000000..32677075485 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html.ini new file mode 100644 index 00000000000..c1133bb1e28 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-013.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html.ini new file mode 100644 index 00000000000..67508733498 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-014.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html.ini new file mode 100644 index 00000000000..1d83623a228 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-015.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html.ini new file mode 100644 index 00000000000..f2fe8f821c4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-016.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html.ini new file mode 100644 index 00000000000..ff32450c7f8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-alignment-positioned-items-017.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-001.html.ini new file mode 100644 index 00000000000..cd685823cd5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-001.html.ini @@ -0,0 +1,6 @@ +[grid-row-axis-alignment-sticky-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-002.html.ini new file mode 100644 index 00000000000..85e518e5b54 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-002.html.ini @@ -0,0 +1,6 @@ +[grid-row-axis-alignment-sticky-positioned-items-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html.ini new file mode 100644 index 00000000000..9e4c6d60c01 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-self-baseline-synthesized-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html.ini new file mode 100644 index 00000000000..862328cabbf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-self-baseline-synthesized-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html.ini new file mode 100644 index 00000000000..461c6b46931 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-self-baseline-synthesized-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html.ini new file mode 100644 index 00000000000..374e29aabaf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html.ini @@ -0,0 +1,12 @@ +[grid-row-axis-self-baseline-synthesized-004.html] + [.inline-grid 1] + expected: FAIL + + [.inline-grid 2] + expected: FAIL + + [.inline-grid 3] + expected: FAIL + + [.inline-grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-005.html.ini new file mode 100644 index 00000000000..7fac4b58ef8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-005.html.ini @@ -0,0 +1,6 @@ +[grid-row-axis-self-baseline-synthesized-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html.ini new file mode 100644 index 00000000000..035ed5bfe92 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-alignment-baseline-with-grid-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html.ini new file mode 100644 index 00000000000..54fbc1b2480 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-alignment-baseline-with-grid-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html.ini new file mode 100644 index 00000000000..0fe071a2285 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-alignment-baseline-with-grid-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html.ini new file mode 100644 index 00000000000..07c2ceed560 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-alignment-baseline-with-grid-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html.ini new file mode 100644 index 00000000000..1b7b1205f8f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html.ini new file mode 100644 index 00000000000..fd62ad75ca9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html.ini new file mode 100644 index 00000000000..8cd5ff2bd26 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html.ini new file mode 100644 index 00000000000..53852c8ed2b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-004.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html.ini new file mode 100644 index 00000000000..55d32a86a62 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html.ini new file mode 100644 index 00000000000..ca190f6bdc8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-006.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html.ini new file mode 100644 index 00000000000..fcb4feb07bd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html.ini new file mode 100644 index 00000000000..740331cd887 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html.ini new file mode 100644 index 00000000000..b817ff63434 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html.ini new file mode 100644 index 00000000000..15dd048543c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html.ini new file mode 100644 index 00000000000..7f0da84770a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html.ini new file mode 100644 index 00000000000..42ea711a1df --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-non-static-positioned-items-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html.ini new file mode 100644 index 00000000000..8dfbdd87172 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html.ini new file mode 100644 index 00000000000..b0af2fb9898 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html.ini new file mode 100644 index 00000000000..13b8b016404 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html.ini new file mode 100644 index 00000000000..0a3ca0f6076 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html.ini new file mode 100644 index 00000000000..6e4a57d3173 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-005.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html.ini new file mode 100644 index 00000000000..271fe87e354 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-006.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html.ini new file mode 100644 index 00000000000..95048349845 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-007.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html.ini new file mode 100644 index 00000000000..401fa42bb0e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-008.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html.ini new file mode 100644 index 00000000000..632ccbaaa1f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-009.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html.ini new file mode 100644 index 00000000000..0ca4b2e3ecb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-010.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html.ini new file mode 100644 index 00000000000..48a964516a0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-011.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html.ini new file mode 100644 index 00000000000..ed11a13e462 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-012.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html.ini new file mode 100644 index 00000000000..aa45871e343 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-013.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html.ini new file mode 100644 index 00000000000..fa83c61f256 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-014.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html.ini new file mode 100644 index 00000000000..6da378ffdab --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-015.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html.ini new file mode 100644 index 00000000000..4798cfbe3bf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html.ini @@ -0,0 +1,12 @@ +[grid-self-alignment-positioned-items-with-margin-border-padding-016.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-001.html.ini new file mode 100644 index 00000000000..051be6862ea --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-001.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-002.html.ini new file mode 100644 index 00000000000..49a901eec42 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-002.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-002.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-003.html.ini new file mode 100644 index 00000000000..27da9e536fe --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-003.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-004.html.ini new file mode 100644 index 00000000000..f165c8b2944 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-004.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-005.html.ini new file mode 100644 index 00000000000..809bbec86cb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-005.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-005.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-006.html.ini new file mode 100644 index 00000000000..3c88b562c07 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-006.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-006.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-007.html.ini new file mode 100644 index 00000000000..db537349a44 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-007.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-007.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-008.html.ini new file mode 100644 index 00000000000..fec1a2e5339 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-008.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-008.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-009.html.ini new file mode 100644 index 00000000000..78cfc1b8d72 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-009.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-009.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-010.html.ini new file mode 100644 index 00000000000..3a1d08c72de --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-010.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-010.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-011.html.ini new file mode 100644 index 00000000000..63ab81b818a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-011.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-011.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-012.html.ini new file mode 100644 index 00000000000..8106baf5283 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-012.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-012.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-013.html.ini new file mode 100644 index 00000000000..a743ca10ca3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-013.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-013.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-014.html.ini new file mode 100644 index 00000000000..3beae5558cc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-014.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-014.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-015.html.ini new file mode 100644 index 00000000000..14489fb6c64 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-015.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-015.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-016.html.ini new file mode 100644 index 00000000000..e0928fe5690 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-016.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-016.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-input-range.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-input-range.html.ini new file mode 100644 index 00000000000..3fb4ae35a48 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-input-range.html.ini @@ -0,0 +1,2 @@ +[grid-self-alignment-stretch-input-range.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html.ini new file mode 100644 index 00000000000..9454ebf51c5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html.ini new file mode 100644 index 00000000000..4bc5720278a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-002.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html.ini new file mode 100644 index 00000000000..27e309773bf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html.ini new file mode 100644 index 00000000000..2582477f29d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html.ini new file mode 100644 index 00000000000..c01e6f6a6ff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-005.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html.ini new file mode 100644 index 00000000000..ca3038bb490 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-006.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html.ini new file mode 100644 index 00000000000..a4ef6d30eb1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-007.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html.ini new file mode 100644 index 00000000000..5ee1fe415ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-008.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html.ini new file mode 100644 index 00000000000..5575bc34d55 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-009.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html.ini new file mode 100644 index 00000000000..e6aedd40af9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-010.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html.ini new file mode 100644 index 00000000000..5c67804aa9a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-011.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html.ini new file mode 100644 index 00000000000..d400b197c4e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-012.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html.ini new file mode 100644 index 00000000000..166b49f7c6f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-013.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html.ini new file mode 100644 index 00000000000..bb27bb93d62 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-014.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html.ini new file mode 100644 index 00000000000..d1a8b484541 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-015.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html.ini new file mode 100644 index 00000000000..b6d0b1c50ae --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-lr-016.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html.ini new file mode 100644 index 00000000000..d9444dbe95c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html.ini new file mode 100644 index 00000000000..be33a6d7eaf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-002.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html.ini new file mode 100644 index 00000000000..580158c034f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html.ini new file mode 100644 index 00000000000..4fca65cc5bb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html.ini new file mode 100644 index 00000000000..b1f1ff731db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-005.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html.ini new file mode 100644 index 00000000000..4eec51cb2eb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-006.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html.ini new file mode 100644 index 00000000000..38edbbfdd6d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-007.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html.ini new file mode 100644 index 00000000000..fffc0e20a68 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-008.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html.ini new file mode 100644 index 00000000000..7dd9e9ae9af --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-009.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html.ini new file mode 100644 index 00000000000..a69d2f03549 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-010.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html.ini new file mode 100644 index 00000000000..ebe730ea2e2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-011.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html.ini new file mode 100644 index 00000000000..ac93721b73b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-012.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html.ini new file mode 100644 index 00000000000..b6bc2ca0c80 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-013.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html.ini new file mode 100644 index 00000000000..dab4b10db3a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-014.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html.ini new file mode 100644 index 00000000000..b42940bfe32 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-015.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html.ini new file mode 100644 index 00000000000..9fa6a504a64 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html.ini @@ -0,0 +1,3 @@ +[grid-self-alignment-stretch-vertical-rl-016.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment.html.ini new file mode 100644 index 00000000000..634aaaabf18 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-alignment.html.ini @@ -0,0 +1,162 @@ +[grid-self-alignment.html] + [.child 2] + expected: FAIL + + [.child 3] + expected: FAIL + + [.child 4] + expected: FAIL + + [.child 6] + expected: FAIL + + [.child 7] + expected: FAIL + + [.child 8] + expected: FAIL + + [.child 9] + expected: FAIL + + [.child 10] + expected: FAIL + + [.child 11] + expected: FAIL + + [.child 13] + expected: FAIL + + [.child 14] + expected: FAIL + + [.child 16] + expected: FAIL + + [.child 17] + expected: FAIL + + [.child 18] + expected: FAIL + + [.child 19] + expected: FAIL + + [.child 22] + expected: FAIL + + [.child 23] + expected: FAIL + + [.child 24] + expected: FAIL + + [.child 26] + expected: FAIL + + [.child 27] + expected: FAIL + + [.child 28] + expected: FAIL + + [.child 30] + expected: FAIL + + [.child 31] + expected: FAIL + + [.child 32] + expected: FAIL + + [.child 33] + expected: FAIL + + [.child 34] + expected: FAIL + + [.child 35] + expected: FAIL + + [.child 37] + expected: FAIL + + [.child 38] + expected: FAIL + + [.child 40] + expected: FAIL + + [.child 41] + expected: FAIL + + [.child 42] + expected: FAIL + + [.child 43] + expected: FAIL + + [.child 46] + expected: FAIL + + [.child 47] + expected: FAIL + + [.child 48] + expected: FAIL + + [.child 50] + expected: FAIL + + [.child 51] + expected: FAIL + + [.child 52] + expected: FAIL + + [.child 54] + expected: FAIL + + [.child 55] + expected: FAIL + + [.child 56] + expected: FAIL + + [.child 57] + expected: FAIL + + [.child 58] + expected: FAIL + + [.child 59] + expected: FAIL + + [.child 61] + expected: FAIL + + [.child 62] + expected: FAIL + + [.child 64] + expected: FAIL + + [.child 65] + expected: FAIL + + [.child 66] + expected: FAIL + + [.child 67] + expected: FAIL + + [.child 70] + expected: FAIL + + [.child 71] + expected: FAIL + + [.child 72] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html.ini new file mode 100644 index 00000000000..4db7adfeff8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html.ini @@ -0,0 +1,36 @@ +[grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html] + [.inline-grid 1] + expected: FAIL + + [.inline-grid 2] + expected: FAIL + + [.inline-grid 3] + expected: FAIL + + [.inline-grid 4] + expected: FAIL + + [.inline-grid 5] + expected: FAIL + + [.inline-grid 6] + expected: FAIL + + [.inline-grid 7] + expected: FAIL + + [.inline-grid 8] + expected: FAIL + + [.inline-grid 9] + expected: FAIL + + [.inline-grid 10] + expected: FAIL + + [.inline-grid 11] + expected: FAIL + + [.inline-grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html.ini new file mode 100644 index 00000000000..466aafc83dd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html.ini @@ -0,0 +1,72 @@ +[grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html] + [.inline-grid 1] + expected: FAIL + + [.inline-grid 2] + expected: FAIL + + [.inline-grid 3] + expected: FAIL + + [.inline-grid 4] + expected: FAIL + + [.inline-grid 5] + expected: FAIL + + [.inline-grid 6] + expected: FAIL + + [.inline-grid 7] + expected: FAIL + + [.inline-grid 8] + expected: FAIL + + [.inline-grid 9] + expected: FAIL + + [.inline-grid 10] + expected: FAIL + + [.inline-grid 11] + expected: FAIL + + [.inline-grid 12] + expected: FAIL + + [.inline-grid 13] + expected: FAIL + + [.inline-grid 14] + expected: FAIL + + [.inline-grid 15] + expected: FAIL + + [.inline-grid 16] + expected: FAIL + + [.inline-grid 17] + expected: FAIL + + [.inline-grid 18] + expected: FAIL + + [.inline-grid 19] + expected: FAIL + + [.inline-grid 20] + expected: FAIL + + [.inline-grid 21] + expected: FAIL + + [.inline-grid 22] + expected: FAIL + + [.inline-grid 23] + expected: FAIL + + [.inline-grid 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html.ini new file mode 100644 index 00000000000..64784ba2294 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html.ini @@ -0,0 +1,18 @@ +[grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-001.html.ini new file mode 100644 index 00000000000..ce63592a7a2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-001.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-002.html.ini new file mode 100644 index 00000000000..1b39ae34918 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-002.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-003.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-003.tentative.html.ini new file mode 100644 index 00000000000..6891538c015 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-003.tentative.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-003.tentative.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-004.html.ini new file mode 100644 index 00000000000..e8d58c769b4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-004.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-005.html.ini new file mode 100644 index 00000000000..0fa264958cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-005.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-006.html.ini new file mode 100644 index 00000000000..17d8dc9f310 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-006.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-007.html.ini new file mode 100644 index 00000000000..f6cdb5b14f4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-007.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-008.html.ini new file mode 100644 index 00000000000..14777f317aa --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-008.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-009.html.ini new file mode 100644 index 00000000000..0ae0f540f6f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/replaced-alignment-with-aspect-ratio-009.html.ini @@ -0,0 +1,2 @@ +[replaced-alignment-with-aspect-ratio-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-001.html.ini new file mode 100644 index 00000000000..7cf88fc5a15 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002-b.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002-b.html.ini new file mode 100644 index 00000000000..1c36ec6353b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002-b.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-002-b.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002.html.ini new file mode 100644 index 00000000000..d27b12601de --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-003.html.ini new file mode 100644 index 00000000000..56736d84d72 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-004.html.ini new file mode 100644 index 00000000000..039f4a04b0d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-005.html.ini new file mode 100644 index 00000000000..1c03adcea0e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-005.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-006.html.ini new file mode 100644 index 00000000000..b99aedcef03 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-006.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-007.html.ini new file mode 100644 index 00000000000..c5314d816f7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-007.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-008.html.ini new file mode 100644 index 00000000000..215c8b28837 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-008.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-001.html.ini new file mode 100644 index 00000000000..c9d77650e8a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-002.html.ini new file mode 100644 index 00000000000..531eaa307e7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-003.html.ini new file mode 100644 index 00000000000..5e960632143 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-004.html.ini new file mode 100644 index 00000000000..8f2b0b7602e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-005.html.ini new file mode 100644 index 00000000000..5334b94ea13 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-005.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-006.html.ini new file mode 100644 index 00000000000..12fd6bcac95 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-006.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html.ini new file mode 100644 index 00000000000..26737453497 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html.ini new file mode 100644 index 00000000000..89f31416483 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html.ini new file mode 100644 index 00000000000..d6b2810d504 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html.ini new file mode 100644 index 00000000000..c490c0c2584 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html.ini new file mode 100644 index 00000000000..a7ed2249f89 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html.ini new file mode 100644 index 00000000000..94869eae2b9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-changes-grid-area-size-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-001.html.ini new file mode 100644 index 00000000000..08b1abae753 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-002.html.ini new file mode 100644 index 00000000000..b73f5e5c5d4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-003.html.ini new file mode 100644 index 00000000000..1bdfb067bf5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-004.html.ini new file mode 100644 index 00000000000..074405580f5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-005.html.ini new file mode 100644 index 00000000000..423f5bf265b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-005.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-006.html.ini new file mode 100644 index 00000000000..6675c36a01c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-006.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-007.html.ini new file mode 100644 index 00000000000..cd7b5cb2334 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-horiz-007.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-horiz-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-001.html.ini new file mode 100644 index 00000000000..b26df647315 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-002.html.ini new file mode 100644 index 00000000000..66badd723e7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-003.html.ini new file mode 100644 index 00000000000..d274a51df31 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-004.html.ini new file mode 100644 index 00000000000..5164b313a0f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-005.html.ini new file mode 100644 index 00000000000..84317d4ec9f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-005.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-006.html.ini new file mode 100644 index 00000000000..16342963975 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-006.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-007.html.ini new file mode 100644 index 00000000000..b26c533a325 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-lr-007.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-lr-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-001.html.ini new file mode 100644 index 00000000000..8ee5c57462f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-001.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-002.html.ini new file mode 100644 index 00000000000..4d18d6d3d99 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-002.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-003.html.ini new file mode 100644 index 00000000000..30eaf12482b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-003.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-004.html.ini new file mode 100644 index 00000000000..1943e1c5bb7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-004.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-005.html.ini new file mode 100644 index 00000000000..171aa871023 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-005.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-006.html.ini new file mode 100644 index 00000000000..d2244d2952a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-006.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-007.html.ini new file mode 100644 index 00000000000..12a4e2eeb8f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-007.html.ini @@ -0,0 +1,2 @@ +[grid-self-baseline-vertical-rl-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-no-interpolation.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-no-interpolation.html.ini new file mode 100644 index 00000000000..ad6569584a3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-no-interpolation.html.ini @@ -0,0 +1,1008 @@ +[grid-no-interpolation.html] + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-columns> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [CSS Animations: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.5) should be [column\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (0.6) should be [column\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (1) should be [column\]] + expected: FAIL + + [Web Animations: property <grid-auto-flow> from [initial\] to [column\] at (1.5) should be [column\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [CSS Animations: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.5) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (0.6) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (1) should be [123px\]] + expected: FAIL + + [Web Animations: property <grid-auto-rows> from [initial\] to [123px\] at (1.5) should be [123px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-column-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-end> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (0) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [CSS Animations: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (0.5) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (0.6) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (1) should be [123\]] + expected: FAIL + + [Web Animations: property <grid-row-start> from [initial\] to [123\] at (1.5) should be [123\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (0) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [CSS Transitions: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (0) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (0) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be [initial\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [CSS Animations: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (-0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (0) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.3) should be [initial\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.5) should be ["."\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (0.6) should be ["."\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (1) should be ["."\]] + expected: FAIL + + [Web Animations: property <grid-template-areas> from [initial\] to ["."\] at (1.5) should be ["."\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-composition.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-composition.html.ini new file mode 100644 index 00000000000..47563c70892 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-composition.html.ini @@ -0,0 +1,285 @@ +[grid-template-columns-composition.html] + [Compositing: property <grid-template-columns> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (-0.3) should be [120px calc(130px + 4%)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (0) should be [150px calc(100px + 10%)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (0.5) should be [200px calc(50px + 20%)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (1) should be [250px 30%\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (1.5) should be [300px calc(-50px + 40%)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (-0.5) should be [1.5fr 3.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (0) should be [2fr 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (0.5) should be [2.5fr 2.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (1) should be [3fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (1.5) should be [3.5fr 1.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px\] from add [100px\] to replace [200px\] at (-0.3) should be [135px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px\] from add [100px\] to replace [200px\] at (0) should be [150px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px\] from add [100px\] to replace [200px\] at (0.5) should be [175px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px\] from add [100px\] to replace [200px\] at (1) should be [200px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [50px\] from add [100px\] to replace [200px\] at (1.5) should be [225px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr\] from add [1fr\] to replace [3fr\] at (-0.5) should be [1.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr\] from add [1fr\] to replace [3fr\] at (0) should be [2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr\] from add [1fr\] to replace [3fr\] at (0.5) should be [2.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr\] from add [1fr\] to replace [3fr\] at (1) should be [3fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr\] from add [1fr\] to replace [3fr\] at (1.5) should be [3.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (-0.5) should be [1fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (0.5) should be [3fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (1) should be [4fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (1.5) should be [5fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (-0.5) should be [1fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (0) should be [2fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (0.5) should be [3fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (1) should be [4fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (1.5) should be [5fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (-0.5) should be [1fr 0fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (0) should be [2fr 1fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (0.5) should be [3fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (1) should be [4fr 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (1.5) should be [5fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (-0.3) should be [0.7fr repeat(2, 0.4fr 24px) 1.4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (0) should be [1fr repeat(2, 1fr 30px) 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (0.5) should be [1.5fr repeat(2, 2fr 40px) 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (1) should be [2fr repeat(2, 3fr 50px) 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (1.5) should be [2.5fr repeat(2, 4fr 60px) 5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (-0.5) should be [1fr [ a b \] 1fr [d\]\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (0) should be [2fr [ a b \] 2fr [d\]\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (0.5) should be [3fr [c\] 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (1) should be [4fr [c\] 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (1.5) should be [5fr [c\] 5fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (-0.5) should be [fit-content(5px) fit-content(40px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (0) should be [fit-content(10px) fit-content(40px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (0.5) should be [fit-content(15px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (1.5) should be [fit-content(25px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (-0.5) should be [minmax(5px, 1fr) minmax(10px, 4fr)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 2fr) minmax(20px, 4fr)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (0.5) should be [minmax(15px, 3fr) minmax(30px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 4fr) minmax(40px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (1.5) should be [minmax(25px, 5fr) minmax(50px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (-0.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.3) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.7) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (-0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.7) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (1) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (1.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (-0.5) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.3) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.7) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (-0.5) should be [7.5px 4.5px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (0) should be [15px 4px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (0.5) should be [22.5px 3.5px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (1) should be [30px 3px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (1.5) should be [37.5px 2.5px\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (-0.5) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.5) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.7) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (1) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (1.5) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (-0.5) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.5) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.7) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (1) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-columns> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (1.5) should be [repeat(2, 3fr)\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-interpolation.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-interpolation.html.ini new file mode 100644 index 00000000000..ab6905bc69c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-interpolation.html.ini @@ -0,0 +1,2052 @@ +[grid-template-columns-interpolation.html] + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-columns> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-001.html.ini new file mode 100644 index 00000000000..183ca3cb243 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-001.html.ini @@ -0,0 +1,3 @@ +[grid-template-columns-neutral-keyframe-001.html] + [Invalidate the result for the neutral keyframe if the value of the <track-breadth> changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-002.html.ini new file mode 100644 index 00000000000..7562ca277a0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-002.html.ini @@ -0,0 +1,3 @@ +[grid-template-columns-neutral-keyframe-002.html] + [Invalidate the result for the neutral keyframe if the type of <track-size> changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-003.html.ini new file mode 100644 index 00000000000..4c0bcd0581d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-003.html.ini @@ -0,0 +1,3 @@ +[grid-template-columns-neutral-keyframe-003.html] + [Invalidate the result for the neutral keyframe if the size of the list changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-004.html.ini new file mode 100644 index 00000000000..cb0607375d3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-columns-neutral-keyframe-004.html.ini @@ -0,0 +1,3 @@ +[grid-template-columns-neutral-keyframe-004.html] + [Invalidate the result for the neutral keyframe if the named lines change.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-composition.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-composition.html.ini new file mode 100644 index 00000000000..f073cb7ced7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-composition.html.ini @@ -0,0 +1,285 @@ +[grid-template-rows-composition.html] + [Compositing: property <grid-template-rows> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (-0.3) should be [120px calc(130px + 4%)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (0) should be [150px calc(100px + 10%)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (0.5) should be [200px calc(50px + 20%)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (1) should be [250px 30%\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px 10%\] from add [100px 100px\] to add [200px 20%\] at (1.5) should be [300px calc(-50px + 40%)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (-0.5) should be [1.5fr 3.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (0) should be [2fr 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (0.5) should be [2.5fr 2.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (1) should be [3fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 2fr\] to add [2fr 1fr\] at (1.5) should be [3.5fr 1.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px\] from add [100px\] to replace [200px\] at (-0.3) should be [135px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px\] from add [100px\] to replace [200px\] at (0) should be [150px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px\] from add [100px\] to replace [200px\] at (0.5) should be [175px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px\] from add [100px\] to replace [200px\] at (1) should be [200px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [50px\] from add [100px\] to replace [200px\] at (1.5) should be [225px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr\] from add [1fr\] to replace [3fr\] at (-0.5) should be [1.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr\] from add [1fr\] to replace [3fr\] at (0) should be [2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr\] from add [1fr\] to replace [3fr\] at (0.5) should be [2.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr\] from add [1fr\] to replace [3fr\] at (1) should be [3fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr\] from add [1fr\] to replace [3fr\] at (1.5) should be [3.5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (-0.5) should be [1fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (0.5) should be [3fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (1) should be [4fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [3fr auto\] at (1.5) should be [5fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (-0.5) should be [1fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (0) should be [2fr auto\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (0.5) should be [3fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (1) should be [4fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr auto\] to add [3fr 3fr\] at (1.5) should be [5fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (-0.5) should be [1fr 0fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (0) should be [2fr 1fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (0.5) should be [3fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (1) should be [4fr 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr auto\] from add [1fr 1fr\] to add [3fr 3fr\] at (1.5) should be [5fr 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (-0.3) should be [0.7fr repeat(2, 0.4fr 24px) 1.4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (0) should be [1fr repeat(2, 1fr 30px) 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (0.5) should be [1.5fr repeat(2, 2fr 40px) 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (1) should be [2fr repeat(2, 3fr 50px) 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [0fr repeat(2, 0fr 10px) 1fr\] from add [1fr repeat(2, 1fr 20px) 1fr\] to add [2fr repeat(2, 3fr 40px) 3fr\] at (1.5) should be [2.5fr repeat(2, 4fr 60px) 5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (-0.5) should be [1fr [ a b \] 1fr [d\]\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (0) should be [2fr [ a b \] 2fr [d\]\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (0.5) should be [3fr [c\] 3fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (1) should be [4fr [c\] 4fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr [a b\] 1fr [d\]\] to add [3fr [c\] 3fr\] at (1.5) should be [5fr [c\] 5fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (-0.5) should be [fit-content(5px) fit-content(40px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (0) should be [fit-content(10px) fit-content(40px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (0.5) should be [fit-content(15px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [fit-content(5px) fit-content(20px)\] from add [fit-content(5px) fit-content(20px)\] to add [fit-content(15px) max-content\] at (1.5) should be [fit-content(25px) max-content\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (-0.5) should be [minmax(5px, 1fr) minmax(10px, 4fr)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 2fr) minmax(20px, 4fr)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (0.5) should be [minmax(15px, 3fr) minmax(30px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 4fr) minmax(40px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [minmax(5px, 1fr) minmax(10px, 2fr)\] from add [minmax(5px, 1fr) minmax(10px, 2fr)\] to add [minmax(15px, 3fr) minmax(30px, auto)\] at (1.5) should be [minmax(25px, 5fr) minmax(50px, auto)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (-0.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.3) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (0.7) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [none\] to add [1fr 1fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (-0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (0.7) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (1) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr\] from add [1fr 1fr\] to add [none\] at (1.5) should be [none\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (-0.5) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.3) should be [2fr 2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (0.7) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [1fr 1fr 1fr\] from add [1fr 1fr 1fr\] to add [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (-0.5) should be [7.5px 4.5px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (0) should be [15px 4px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (0.5) should be [22.5px 3.5px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (1) should be [30px 3px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [10px 20px 30px\] from add [15px 4px\] to add [30px 3px\] at (1.5) should be [37.5px 2.5px\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (-0.5) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.5) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (0.7) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (1) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(3, 3fr 50px)\] at (1.5) should be [repeat(3, 3fr 50px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (-0.5) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.5) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (0.7) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (1) should be [repeat(2, 3fr)\]] + expected: FAIL + + [Compositing: property <grid-template-rows> underlying [undefined\] from add [repeat(2, 2fr 30px)\] to add [repeat(2, 3fr)\] at (1.5) should be [repeat(2, 3fr)\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-interpolation.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-interpolation.html.ini new file mode 100644 index 00000000000..26d7f9deb8d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-interpolation.html.ini @@ -0,0 +1,2052 @@ +[grid-template-rows-interpolation.html] + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.5) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (0.6) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1) should be [2fr 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr 2fr\] at (1.5) should be [2fr 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (-0.3) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.3) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (-0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.3) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.5) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (0.6) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [none\] at (1.5) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (-0.3) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.3) should be [none\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.5) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (0.6) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (1) should be [20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [none\] to [20px 30px\] at (1.5) should be [20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (-1) should be [calc(20px + -20%) calc(40px + -30%) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0) should be [calc(10px + 0%) calc(20px + 0%) 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.4) should be [calc(6px + 8%) calc(12px + 12%) 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (0.6) should be [calc(4px + 12%) calc(8px + 18%) 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (1) should be [20% 30% 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 20px 30px\] to [20% 30% 40px\] at (2) should be [calc(-10px + 40%) calc(-20px + 60%) 50px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (-1) should be [0fr 1fr 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.4) should be [1.4fr 1fr 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (0.6) should be [1.6fr auto 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (1) should be [2fr auto 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [2fr auto 2fr\] at (2) should be [3fr auto 3fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (-1) should be [0fr [a b\] 1fr [d\] 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0) should be [1fr [a b\] 1fr [d\] 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.4) should be [1.4fr [a b\] 1fr [d\] 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (0.6) should be [1.6fr [c\] auto 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (1) should be [2fr [c\] auto 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr [a b\] 1fr [d\] 1fr\] to [2fr [c\] auto 2fr\] at (2) should be [3fr [c\] auto 3fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (-1) should be [fit-content(0px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0) should be [fit-content(10px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.4) should be [fit-content(14px) fit-content(20px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (0.6) should be [fit-content(16px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (1) should be [fit-content(20px) max-content\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px) fit-content(20px)\] to [fit-content(20px) max-content\] at (2) should be [fit-content(30px) max-content\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (-1) should be [minmax(0px, 0fr) minmax(10px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0) should be [minmax(10px, 1fr) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.4) should be [minmax(14px, 1.4fr) minmax(24px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (0.6) should be [minmax(16px, 1.6fr) minmax(26px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (1) should be [minmax(20px, 2fr) minmax(30px, auto)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [minmax(10px, 1fr) minmax(20px, 2fr)\] to [minmax(20px, 2fr) minmax(30px, auto)\] at (2) should be [minmax(30px, 3fr) minmax(40px, auto)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [10px 10px 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (1) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px 10px 10px\] to [1fr fit-content(20px) minmax(20px, 2fr)\] at (2) should be [1fr fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (-1) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.4) should be [1fr 1fr 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (0.6) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (1) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr 1fr 1fr\] to [20px fit-content(20px) minmax(20px, 2fr)\] at (2) should be [20px fit-content(20px) minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (-1) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.4) should be [fit-content(10px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (0.6) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (1) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [fit-content(10px)\] to [minmax(20px, 2fr)\] at (2) should be [minmax(20px, 2fr)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (-1) should be [0px 10px 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0) should be [10px 20px 30px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.4) should be [14px 24px 34px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (0.6) should be [16px 26px 36px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (1) should be [20px 30px 40px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [inherit\] to [20px 30px 40px\] at (2) should be [30px 40px 50px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (0.6) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(2, 3fr 40px 50px) 2fr\] at (1.5) should be [2fr repeat(2, 3fr 40px 50px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (-0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.3) should be [1fr repeat(2, 2fr 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (0.6) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr 30px) 1fr\] to [2fr repeat(3, 3fr 40px) 2fr\] at (1.5) should be [2fr repeat(3, 3fr 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (-0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.3) should be [repeat(2, 2fr 30px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (0.6) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1) should be [repeat(4, 40px)\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [repeat(2, 2fr 30px)\] to [repeat(4, 40px)\] at (1.5) should be [repeat(4, 40px)\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (-1) should be [0fr repeat(2, 1fr auto 20px) 0fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0) should be [1fr repeat(2, 2fr auto 30px) 1fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.4) should be [1.4fr repeat(2, 2.4fr auto 34px) 1.4fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (0.6) should be [1.6fr repeat(2, 2.6fr 30px 36px) 1.6fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (1) should be [2fr repeat(2, 3fr 30px 40px) 2fr\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [1fr repeat(2, 2fr auto 30px) 1fr\] to [2fr repeat(2, 3fr 30px 40px) 2fr\] at (2) should be [3fr repeat(2, 4fr 30px 50px) 3fr\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (0.6) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px 20px repeat(auto-fill, minmax(30px, 1fr))\] at (1.5) should be [20px 20px repeat(auto-fill, minmax(30px, 1fr))\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (0.6) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\] at (1.5) should be [20px repeat(auto-fit, minmax(30px, 1fr)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-behavior:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition-property:all and transition-behavor:allow-discrete: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Transitions with transition: all: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [CSS Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (-0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.3) should be [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (0.6) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL + + [Web Animations: property <grid-template-rows> from [10px repeat(auto-fill, minmax(25px, 1fr)) 10px\] to [20px repeat(auto-fill, minmax(35px, auto)) 20px\] at (1.5) should be [20px repeat(auto-fill, minmax(35px, auto)) 20px\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-001.html.ini new file mode 100644 index 00000000000..98522f30675 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-001.html.ini @@ -0,0 +1,3 @@ +[grid-template-rows-neutral-keyframe-001.html] + [Invalidate the result for the neutral keyframe if the value of the <track-breadth> changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-002.html.ini new file mode 100644 index 00000000000..e947c7a7a4f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-002.html.ini @@ -0,0 +1,3 @@ +[grid-template-rows-neutral-keyframe-002.html] + [Invalidate the result for the neutral keyframe if the type of <track-size> changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-003.html.ini new file mode 100644 index 00000000000..e19968a3e66 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-003.html.ini @@ -0,0 +1,3 @@ +[grid-template-rows-neutral-keyframe-003.html] + [Invalidate the result for the neutral keyframe if the size of the list changes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-004.html.ini new file mode 100644 index 00000000000..7d568f8290a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/animation/grid-template-rows-neutral-keyframe-004.html.ini @@ -0,0 +1,3 @@ +[grid-template-rows-neutral-keyframe-004.html] + [Invalidate the result for the neutral keyframe if the named lines change.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-001.html.ini new file mode 100644 index 00000000000..e0f197868b8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-001.html.ini @@ -0,0 +1,2 @@ +[child-border-box-and-max-content-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-002.html.ini new file mode 100644 index 00000000000..796f0aaa788 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/child-border-box-and-max-content-002.html.ini @@ -0,0 +1,2 @@ +[child-border-box-and-max-content-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-with-auto-fill.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-with-auto-fill.html.ini new file mode 100644 index 00000000000..27f0cfef0e9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-with-auto-fill.html.ini @@ -0,0 +1,2 @@ +[dynamic-grid-with-auto-fill.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-within-flexbox.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-within-flexbox.html.ini new file mode 100644 index 00000000000..cfa4826e48f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/dynamic-grid-within-flexbox.html.ini @@ -0,0 +1,2 @@ +[dynamic-grid-within-flexbox.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/firefox-bug-1881495.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/firefox-bug-1881495.html.ini new file mode 100644 index 00000000000..5cf6aef4665 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/firefox-bug-1881495.html.ini @@ -0,0 +1,2 @@ +[firefox-bug-1881495.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-001.html.ini new file mode 100644 index 00000000000..4bf18d5d0b2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-001.html.ini @@ -0,0 +1,2 @@ +[grid-container-baseline-synthesized-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-002.html.ini new file mode 100644 index 00000000000..b1f0ed70bf8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-002.html.ini @@ -0,0 +1,2 @@ +[grid-container-baseline-synthesized-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-003.html.ini new file mode 100644 index 00000000000..30e114170b9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-003.html.ini @@ -0,0 +1,2 @@ +[grid-container-baseline-synthesized-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-004.html.ini new file mode 100644 index 00000000000..6847ef99a24 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-container-baseline-synthesized-004.html.ini @@ -0,0 +1,2 @@ +[grid-container-baseline-synthesized-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/explicit-grid-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/explicit-grid-size-001.html.ini new file mode 100644 index 00000000000..1b6e951a0df --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/explicit-grid-size-001.html.ini @@ -0,0 +1,33 @@ +[explicit-grid-size-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-distribution-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-distribution-001.html.ini new file mode 100644 index 00000000000..be0c7119c01 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-distribution-001.html.ini @@ -0,0 +1,18 @@ +[flex-content-distribution-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-001.html.ini new file mode 100644 index 00000000000..484372fb8c0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-001.html.ini @@ -0,0 +1,45 @@ +[flex-content-resolution-columns-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-002.html.ini new file mode 100644 index 00000000000..2005db50f31 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-columns-002.html.ini @@ -0,0 +1,33 @@ +[flex-content-resolution-columns-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-rows-001.html.ini index 0f37ae87455..df5eefd6462 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-rows-001.html.ini @@ -1,78 +1,78 @@ -[2d.composite.grid.filter.no_shadow.fillRect.worker.html] - [2d] +[flex-content-resolution-rows-001.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] + [.grid 24] expected: FAIL - [2d 24] + [.grid 25] expected: FAIL - [2d 25] + [.grid 26] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-rows-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-rows-002.html.ini new file mode 100644 index 00000000000..676deba93c5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-content-resolution-rows-002.html.ini @@ -0,0 +1,63 @@ +[flex-content-resolution-rows-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-factor-sum-less-than-1-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-factor-sum-less-than-1-001.html.ini new file mode 100644 index 00000000000..3d5225868c8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-factor-sum-less-than-1-001.html.ini @@ -0,0 +1,12 @@ +[flex-factor-sum-less-than-1-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-item-grid-container-percentage-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-item-grid-container-percentage-rows-001.html.ini new file mode 100644 index 00000000000..2a86fe70d0a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/flex-item-grid-container-percentage-rows-001.html.ini @@ -0,0 +1,2 @@ +[flex-item-grid-container-percentage-rows-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit-with-percentage.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit-with-percentage.html.ini new file mode 100644 index 00000000000..089b6068a1a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit-with-percentage.html.ini @@ -0,0 +1,2 @@ +[fr-unit-with-percentage.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit.html.ini new file mode 100644 index 00000000000..a6e7e27fa14 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/fr-unit.html.ini @@ -0,0 +1,2 @@ +[fr-unit.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-explicit-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-explicit-rows-001.html.ini new file mode 100644 index 00000000000..9ca5b8b71d2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-explicit-rows-001.html.ini @@ -0,0 +1,3 @@ +[grid-auto-explicit-rows-001.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-columns-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-columns-001.html.ini new file mode 100644 index 00000000000..732f2599baf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-columns-001.html.ini @@ -0,0 +1,99 @@ +[grid-auto-fill-columns-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-rows-001.html.ini new file mode 100644 index 00000000000..590b484d291 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fill-rows-001.html.ini @@ -0,0 +1,105 @@ +[grid-auto-fill-rows-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-columns-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-columns-001.html.ini new file mode 100644 index 00000000000..30fcc86cfa5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-columns-001.html.ini @@ -0,0 +1,105 @@ +[grid-auto-fit-columns-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-rows-001.html.ini new file mode 100644 index 00000000000..d375edf3dc6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-fit-rows-001.html.ini @@ -0,0 +1,99 @@ +[grid-auto-fit-rows-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-001.html.ini new file mode 100644 index 00000000000..636820c3dce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-001.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-aspect-ratio-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-002.html.ini new file mode 100644 index 00000000000..5636e067299 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-aspect-ratio-002.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-aspect-ratio-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-002.html.ini new file mode 100644 index 00000000000..b509f80456b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-002.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-dynamic-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-003.html.ini new file mode 100644 index 00000000000..4328b8d9a5c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-dynamic-003.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-dynamic-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-intrinsic-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-intrinsic-001.html.ini new file mode 100644 index 00000000000..a2852e33e84 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-intrinsic-001.html.ini @@ -0,0 +1,24 @@ +[grid-auto-repeat-intrinsic-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-001.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-001.tentative.html.ini new file mode 100644 index 00000000000..5187e488e93 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-001.tentative.html.ini @@ -0,0 +1,60 @@ +[grid-auto-repeat-max-size-001.tentative.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16: Percentage padding, min-content] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19: Percentage padding, max-content] + expected: FAIL + + [.grid 20] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-002.html.ini new file mode 100644 index 00000000000..97c343c253a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-max-size-002.html.ini @@ -0,0 +1,12 @@ +[grid-auto-repeat-max-size-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-max-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-max-size-001.html.ini new file mode 100644 index 00000000000..a3170ca7e6c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-max-size-001.html.ini @@ -0,0 +1,12 @@ +[grid-auto-repeat-min-max-size-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-001.html.ini new file mode 100644 index 00000000000..ca26a99d107 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-001.html.ini @@ -0,0 +1,36 @@ +[grid-auto-repeat-min-size-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-002.html.ini new file mode 100644 index 00000000000..322021d0784 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-002.html.ini @@ -0,0 +1,12 @@ +[grid-auto-repeat-min-size-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-003.html.ini new file mode 100644 index 00000000000..7cf8086d46c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-003.html.ini @@ -0,0 +1,3 @@ +[grid-auto-repeat-min-size-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-004.html.ini new file mode 100644 index 00000000000..1a5322676df --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-min-size-004.html.ini @@ -0,0 +1,3 @@ +[grid-auto-repeat-min-size-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-minmax.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-minmax.html.ini new file mode 100644 index 00000000000..821eeaaa354 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-minmax.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-minmax.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini new file mode 100644 index 00000000000..07fdcfd2d89 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-multiple-values-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-002.html.ini new file mode 100644 index 00000000000..dff55667834 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-002.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-multiple-values-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-003.html.ini new file mode 100644 index 00000000000..2b35667ed37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-003.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-multiple-values-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-positioned-container-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-positioned-container-001.html.ini new file mode 100644 index 00000000000..0eb499e339f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-auto-repeat-positioned-container-001.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-positioned-container-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-auto-repeat-tracks.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-auto-repeat-tracks.html.ini new file mode 100644 index 00000000000..d2e620087ff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-auto-repeat-tracks.html.ini @@ -0,0 +1,48 @@ +[grid-change-auto-repeat-tracks.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html.ini new file mode 100644 index 00000000000..64d82750dee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html.ini @@ -0,0 +1,18 @@ +[grid-change-fit-content-argument-001.html] + [.grid 1] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-intrinsic-size-with-auto-repeat-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-intrinsic-size-with-auto-repeat-tracks-001.html.ini new file mode 100644 index 00000000000..67d68630066 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-change-intrinsic-size-with-auto-repeat-tracks-001.html.ini @@ -0,0 +1,24 @@ +[grid-change-intrinsic-size-with-auto-repeat-tracks-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-auto-repeat-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-auto-repeat-001.html.ini new file mode 100644 index 00000000000..2167323ce08 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-auto-repeat-001.html.ini @@ -0,0 +1,36 @@ +[grid-inline-auto-repeat-001.html] + ['autoFillColumns' with: grid-template-columns: repeat(auto-fill, 10px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFitColumns' with: grid-template-columns: repeat(auto-fit, 10px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFillRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fill, 10px);] + expected: FAIL + + ['autoFitRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fit, 10px);] + expected: FAIL + + ['autoFillColumns' with: grid-template-columns: repeat(auto-fill, 9px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFitColumns' with: grid-template-columns: repeat(auto-fit, 9px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFillRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fill, 9px);] + expected: FAIL + + ['autoFitRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fit, 9px);] + expected: FAIL + + ['autoFillColumns' with: grid-template-columns: repeat(auto-fill, 30px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFitColumns' with: grid-template-columns: repeat(auto-fit, 30px); and grid-template-rows: 20px;] + expected: FAIL + + ['autoFillRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fill, 30px);] + expected: FAIL + + ['autoFitRows' with: grid-template-columns: 20px; and grid-template-rows: repeat(auto-fit, 30px);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-flexible-lengths-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-flexible-lengths-001.html.ini new file mode 100644 index 00000000000..9388e1e2166 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-flexible-lengths-001.html.ini @@ -0,0 +1,186 @@ +[grid-inline-support-flexible-lengths-001.html] + ['emptyGrid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 10fr; and grid-template-rows: 10fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 10fr; and grid-template-rows: 10fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0.5fr; and grid-template-rows: 0.5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0.5fr; and grid-template-rows: 0.5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: .5fr; and grid-template-rows: .5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: .5fr; and grid-template-rows: .5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 1fr); and grid-template-rows: minmax(100px, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 1fr); and grid-template-rows: minmax(100px, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(1fr, 1fr); and grid-template-rows: minmax(1fr, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(1fr, 1fr); and grid-template-rows: minmax(1fr, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0.25fr 0.75fr; and grid-template-rows: 0.25fr 0.75fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0.25fr 0.75fr; and grid-template-rows: 0.25fr 0.75fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 2fr 1fr; and grid-template-rows: 1fr 2fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 2fr 1fr; and grid-template-rows: 1fr 2fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr 4fr 3fr 2fr; and grid-template-rows: auto 1fr 4fr 3fr 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr 4fr 3fr 2fr; and grid-template-rows: auto 1fr 4fr 3fr 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 4fr 100px 3fr 2fr; and grid-template-rows: 1fr 4fr 100px 3fr 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 4fr 100px 3fr 2fr; and grid-template-rows: 1fr 4fr 100px 3fr 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content 1fr; and grid-template-rows: max-content 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content 1fr; and grid-template-rows: max-content 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content 1fr; and grid-template-rows: min-content 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content 1fr; and grid-template-rows: min-content 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 300px 1fr; and grid-template-rows: 200px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 300px 1fr; and grid-template-rows: 200px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 800px 1fr; and grid-template-rows: 600px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 800px 1fr; and grid-template-rows: 600px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1000px 1fr; and grid-template-rows: 700px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1000px 1fr; and grid-template-rows: 700px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(50px + 50%) 1fr; and grid-template-rows: calc(50px + 50%) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: calc(50px + 50%) 1fr; and grid-template-rows: calc(50px + 50%) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 300px) 1fr; and grid-template-rows: minmax(100px, 200px) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 300px) 1fr; and grid-template-rows: minmax(100px, 200px) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(4, 1fr); and grid-template-rows: repeat(4, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(4, 1fr); and grid-template-rows: repeat(4, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(4, [b\] 1fr [c\]) [d\]; and grid-template-rows: [z\] repeat(4, [y\] 1fr) [x\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(4, [b\] 1fr [c\]) [d\]; and grid-template-rows: [z\] repeat(4, [y\] 1fr) [x\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: fr; and grid-template-rows: fr;] + expected: FAIL + + ['grid' with: grid-template-columns: fr; and grid-template-rows: fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1 fr; and grid-template-rows: 1 fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1 fr; and grid-template-rows: 1 fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1free-space; and grid-template-rows: 1free-space;] + expected: FAIL + + ['grid' with: grid-template-columns: 1free-space; and grid-template-rows: 1free-space;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: -2fr; and grid-template-rows: -2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: -2fr; and grid-template-rows: -2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0,5fr; and grid-template-rows: 0,5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0,5fr; and grid-template-rows: 0,5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(1fr + 100px); and grid-template-rows: calc(1fr + 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: calc(1fr + 100px); and grid-template-rows: calc(1fr + 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: (1fr) auto; and grid-template-rows: (1fr) auto;] + expected: FAIL + + ['grid' with: grid-template-columns: (1fr) auto; and grid-template-rows: (1fr) auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(1fr, 1000px); and grid-template-rows: minmax(1fr, 700px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(1fr, 1000px); and grid-template-rows: minmax(1fr, 700px);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-areas-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-areas-001.html.ini new file mode 100644 index 00000000000..1cc462659b0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-areas-001.html.ini @@ -0,0 +1,135 @@ +[grid-inline-support-grid-template-areas-001.html] + ['inline-grid' with: grid-template-areas: none;] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ".";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "lower UPPER 10 -minus _low 1-st ©copy_right line¶";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b""c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b"\t"c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b"\n"c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "a b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a a" "b b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ". a ." "b a c";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ".. a ..." "b a c";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ".a..." "b a c";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "head head" "nav main" "foot .";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "head head" "nav main" "foot ....";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "head head" "nav main" "foot.";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ". header header ." "nav main main main" "nav footer footer .";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "... header header ...." "nav main main main" "nav footer footer ....";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "...header header...." "nav main main main" "nav footer footer....";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "title stats" "score stats" "board board" "ctrls ctrls";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "title board" "stats board" "score ctrls";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ". a" "b a" ". a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ".. a" "b a" "... a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "..a" "b a" ".a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a a a" "b b b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ". ." "a a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "... ...." "a a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: a;] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a" "b c";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "c" "d e";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b c" "d e";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b"-"c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" - "c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" . "c d";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a" "b" "a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "b b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "b a" "b b";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a b" "b a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "a ." ". a";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: ",";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "10%";] + expected: FAIL + + ['inline-grid' with: grid-template-areas: "USD$";] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-columns-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-columns-rows-001.html.ini new file mode 100644 index 00000000000..72d264082e8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-grid-template-columns-rows-001.html.ini @@ -0,0 +1,132 @@ +[grid-inline-support-grid-template-columns-rows-001.html] + ['emptyGrid' with: grid-template-columns: none; and grid-template-rows: none;] + expected: FAIL + + ['grid' with: grid-template-columns: none; and grid-template-rows: none;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto; and grid-template-rows: auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto; and grid-template-rows: auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 500px; and grid-template-rows: 300px;] + expected: FAIL + + ['grid' with: grid-template-columns: 500px; and grid-template-rows: 300px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 40em; and grid-template-rows: 20em;] + expected: FAIL + + ['grid' with: grid-template-columns: 40em; and grid-template-rows: 20em;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 25%; and grid-template-rows: 50%;] + expected: FAIL + + ['grid' with: grid-template-columns: 25%; and grid-template-rows: 50%;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(200px + 10%); and grid-template-rows: calc(25% + 50px);] + expected: FAIL + + ['grid' with: grid-template-columns: calc(200px + 10%); and grid-template-rows: calc(25% + 50px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content; and grid-template-rows: max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content; and grid-template-rows: max-content;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content; and grid-template-rows: min-content;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content; and grid-template-rows: min-content;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(200px, 400px); and grid-template-rows: minmax(50px, 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(200px, 400px); and grid-template-rows: minmax(50px, 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(calc(10% + 200px), calc(800px - 20%)); and grid-template-rows: minmax(calc(20% + 50px), calc(600px - 10%));] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(calc(10% + 200px), calc(800px - 20%)); and grid-template-rows: minmax(calc(20% + 50px), calc(600px - 10%));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 500px 200px 50px; and grid-template-rows: 100px 300px;] + expected: FAIL + + ['grid' with: grid-template-columns: 500px 200px 50px; and grid-template-rows: 100px 300px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 40em 100px 15%; and grid-template-rows: 50px 20em 10%;] + expected: FAIL + + ['grid' with: grid-template-columns: 40em 100px 15%; and grid-template-rows: 50px 20em 10%;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 200px 1fr; and grid-template-rows: 1fr 100px;] + expected: FAIL + + ['grid' with: grid-template-columns: 200px 1fr; and grid-template-rows: 1fr 100px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 2fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 2fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(25px, 75px) 750px; and grid-template-rows: minmax(50px, 150px) 500px;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(25px, 75px) 750px; and grid-template-rows: minmax(50px, 150px) 500px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content 1fr calc(20px + 10%) minmax(30em, 50em); and grid-template-rows: min-content 1fr calc(10% + 40px) minmax(3em, 5em);] + expected: FAIL + + ['grid' with: grid-template-columns: min-content 1fr calc(20px + 10%) minmax(30em, 50em); and grid-template-rows: min-content 1fr calc(10% + 40px) minmax(3em, 5em);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: foo; and grid-template-rows: bar;] + expected: FAIL + + ['grid' with: grid-template-columns: foo; and grid-template-rows: bar;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto none; and grid-template-rows: none auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto none; and grid-template-rows: none auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px, 200px; and grid-template-rows: 300px, 400px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px, 200px; and grid-template-rows: 300px, 400px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 200px, 300px); and grid-template-rows: minmax(100px, 200px, 300px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 200px, 300px); and grid-template-rows: minmax(100px, 200px, 300px);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-named-grid-lines-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-named-grid-lines-001.html.ini new file mode 100644 index 00000000000..795cee45f73 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-named-grid-lines-001.html.ini @@ -0,0 +1,240 @@ +[grid-inline-support-named-grid-lines-001.html] + ['emptyGrid' with: grid-template-columns: [first\] auto [last\]; and grid-template-rows: [first\] auto [last\];] + expected: FAIL + + ['grid' with: grid-template-columns: [first\] auto [last\]; and grid-template-rows: [first\] auto [last\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [F1rst-L1_n3\] auto [L4st-L1_n3\]; and grid-template-rows: [F1rst-L1_n3\] auto [L4st-L1_n3\];] + expected: FAIL + + ['grid' with: grid-template-columns: [F1rst-L1_n3\] auto [L4st-L1_n3\]; and grid-template-rows: [F1rst-L1_n3\] auto [L4st-L1_n3\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [\] auto [ \]; and grid-template-rows: [ \] auto [\];] + expected: FAIL + + ['grid' with: grid-template-columns: [\] auto [ \]; and grid-template-rows: [ \] auto [\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [first\] auto; and grid-template-rows: [first\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [first\] auto; and grid-template-rows: [first\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [last\]; and grid-template-rows: auto [last\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto [last\]; and grid-template-rows: auto [last\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [line\] auto [line\]; and grid-template-rows: [line\] auto [line\];] + expected: FAIL + + ['grid' with: grid-template-columns: [line\] auto [line\]; and grid-template-rows: [line\] auto [line\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [first line\] auto [last line\]; and grid-template-rows: [first line\] auto [last line\];] + expected: FAIL + + ['grid' with: grid-template-columns: [first line\] auto [last line\]; and grid-template-rows: [first line\] auto [last line\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [b\] auto [c\]; and grid-template-rows: [a\] auto [b\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [b\] auto [c\]; and grid-template-rows: [a\] auto [b\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [b\] auto [c\]; and grid-template-rows: auto [b\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto [b\] auto [c\]; and grid-template-rows: auto [b\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto auto [c\]; and grid-template-rows: [a\] auto auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto auto [c\]; and grid-template-rows: [a\] auto auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [b\] auto; and grid-template-rows: [a\] auto [b\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [b\] auto; and grid-template-rows: [a\] auto [b\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto auto; and grid-template-rows: [a\] auto auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto auto; and grid-template-rows: [a\] auto auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [b\] auto; and grid-template-rows: auto [b\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto [b\] auto; and grid-template-rows: auto [b\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto auto [c\]; and grid-template-rows: auto auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto [c\]; and grid-template-rows: auto auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [a\] auto [a\]; and grid-template-rows: [a\] auto [a\] auto [a\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [a\] auto [a\]; and grid-template-rows: [a\] auto [a\] auto [a\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a b c\] auto [a b c\] auto [a b c\]; and grid-template-rows: [a b c\] auto [a b c\] auto [a b c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a b c\] auto [a b c\] auto [a b c\]; and grid-template-rows: [a b c\] auto [a b c\] auto [a b c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] 40em [b\] 100px [c\] 15% [d\]; and grid-template-rows: [z\] 50px [y\] 20em [x\] 10% [w\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] 40em [b\] 100px [c\] 15% [d\]; and grid-template-rows: [z\] 50px [y\] 20em [x\] 10% [w\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] 200px [b\] 1fr [c\]; and grid-template-rows: [z\] 1fr [y\] 100px [x\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] 200px [b\] 1fr [c\]; and grid-template-rows: [z\] 1fr [y\] 100px [x\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] min-content [b\] 1fr [c\] calc(20px + 10%) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content [y\] 1fr [x\] calc(10% + 40px) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] min-content [b\] 1fr [c\] calc(20px + 10%) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content [y\] 1fr [x\] calc(10% + 40px) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\]; and grid-template-rows: [a\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\]; and grid-template-rows: [a\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a b\]; and grid-template-rows: [a b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a b\]; and grid-template-rows: [a b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] none [b\]; and grid-template-rows: [a\] none [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] none [b\]; and grid-template-rows: [a\] none [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] [b\]; and grid-template-rows: [a\] [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] [b\]; and grid-template-rows: [a\] [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: a auto b; and grid-template-rows: a auto b;] + expected: FAIL + + ['grid' with: grid-template-columns: a auto b; and grid-template-rows: a auto b;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: (a) auto (b); and grid-template-rows: (a) auto (b);] + expected: FAIL + + ['grid' with: grid-template-columns: (a) auto (b); and grid-template-rows: (a) auto (b);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 'a' auto 'b'; and grid-template-rows: 'a' auto 'b';] + expected: FAIL + + ['grid' with: grid-template-columns: 'a' auto 'b'; and grid-template-rows: 'a' auto 'b';] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: "a" auto "b"; and grid-template-rows: "a" auto "b";] + expected: FAIL + + ['grid' with: grid-template-columns: "a" auto "b"; and grid-template-rows: "a" auto "b";] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a, b\] auto [a, b\]; and grid-template-rows: [a, b\] auto [a, b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a, b\] auto [a, b\]; and grid-template-rows: [a, b\] auto [a, b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] [b\] auto [c d\] [e\]; and grid-template-rows: [a\] [b\] auto [c d\] [e\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] [b\] auto [c d\] [e\]; and grid-template-rows: [a\] [b\] auto [c d\] [e\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a [b\]\] auto [c\]; and grid-template-rows: [a [b\]\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a [b\]\] auto [c\]; and grid-template-rows: [a [b\]\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [[b\]\]; and grid-template-rows: [a\] auto [[b\]\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [[b\]\]; and grid-template-rows: [a\] auto [[b\]\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a auto [b\]; and grid-template-rows: [a auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a auto [b\]; and grid-template-rows: [a auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a 100px\] auto [b\]; and grid-template-rows: [a 100px\] auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a 100px\] auto [b\]; and grid-template-rows: [a 100px\] auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a 50%\] auto [b\]; and grid-template-rows: [a 50%\] auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a 50%\] auto [b\]; and grid-template-rows: [a 50%\] auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [5\] auto [10\]; and grid-template-rows: [5\] auto [10\];] + expected: FAIL + + ['grid' with: grid-template-columns: [5\] auto [10\]; and grid-template-rows: [5\] auto [10\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a.\] auto [b*\]; and grid-template-rows: [a.\] auto [b*\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a.\] auto [b*\]; and grid-template-rows: [a.\] auto [b*\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [#a\] auto [$b\]; and grid-template-rows: [#a\] auto [$b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [#a\] auto [$b\]; and grid-template-rows: [#a\] auto [$b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [initial\] auto; and grid-template-rows: [initial\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [initial\] auto; and grid-template-rows: [initial\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [inherit\] auto; and grid-template-rows: [inherit\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [inherit\] auto; and grid-template-rows: [inherit\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [default\] auto; and grid-template-rows: [default\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [default\] auto; and grid-template-rows: [default\] auto;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-repeat-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-repeat-001.html.ini new file mode 100644 index 00000000000..f467acb877c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-support-repeat-001.html.ini @@ -0,0 +1,120 @@ +[grid-inline-support-repeat-001.html] + ['emptyGrid' with: grid-template-columns: repeat(1, auto); and grid-template-rows: repeat(1, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(1, auto); and grid-template-rows: repeat(1, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, auto); and grid-template-rows: repeat(2, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, auto); and grid-template-rows: repeat(2, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, minmax(50px, calc(50px + 50%))); and grid-template-rows: repeat(2, minmax(50px, calc(50px + 50%)));] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, minmax(50px, calc(50px + 50%))); and grid-template-rows: repeat(2, minmax(50px, calc(50px + 50%)));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(5, 10%); and grid-template-rows: repeat(5, 10%);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(5, 10%); and grid-template-rows: repeat(5, 10%);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content repeat(2, 25%) 1fr; and grid-template-rows: 100px repeat(2, 25%) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content repeat(2, 25%) 1fr; and grid-template-rows: max-content repeat(2, 25%) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, min-content 50px); and grid-template-rows: repeat(2, min-content 50px);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, min-content 50px); and grid-template-rows: repeat(2, min-content 50px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]); and grid-template-rows: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]); and grid-template-rows: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, auto [b\] 100px) [c\]; and grid-template-rows: [a\] repeat(2, auto [b\] 100px) [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, auto [b\] 100px) [c\]; and grid-template-rows: [a\] repeat(2, auto [b\] 100px) [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto repeat(2, [b\] 100px) [c\]; and grid-template-rows: [a\] auto repeat(2, [b\] 100px) [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto repeat(2, [b\] 100px) [c\]; and grid-template-rows: [a\] auto repeat(2, [b\] 100px) [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, auto [b\]) 100px [c\]; and grid-template-rows: [a\] repeat(2, auto [b\]) 100px [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, auto [b\]) 100px [c\]; and grid-template-rows: [a\] repeat(2, auto [b\]) 100px [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, [b\] 100px); and grid-template-rows: [a\] repeat(2, [b\] 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, [b\] 100px); and grid-template-rows: [a\] repeat(2, [b\] 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, [b\] auto [c\]) [d\]; and grid-template-rows: [a\] repeat(2, [b\] auto [c\]) [d\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, [b\] auto [c\]) [d\]; and grid-template-rows: [a\] repeat(2, [b\] auto [c\]) [d\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] min-content repeat(2, [b\] 1fr [c\] calc(20px + 10%)) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content repeat(2, [y\] 1fr [x\] calc(10% + 40px)) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] min-content repeat(2, [b\] 1fr [c\] calc(20px + 10%)) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content repeat(2, [y\] 1fr [x\] calc(10% + 40px)) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(-1, auto); and grid-template-rows: repeat(-1, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(-1, auto); and grid-template-rows: repeat(-1, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(auto, 2); and grid-template-rows: repeat(auto, 2);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(auto, 2); and grid-template-rows: repeat(auto, 2);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat 2, auto; and grid-template-rows: repeat 2, auto;] + expected: FAIL + + ['grid' with: grid-template-columns: repeat 2, auto; and grid-template-rows: repeat 2, auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2 auto); and grid-template-rows: repeat(2 auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2 auto); and grid-template-rows: repeat(2 auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px (repeat 2, auto); and grid-template-rows: (repeat 2, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: 100px (repeat 2, auto); and grid-template-rows: (repeat 2, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, 50px repeat(2, 100px)); and grid-template-rows: repeat(2, 50px repeat(2, 100px));] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, 50px repeat(2, 100px)); and grid-template-rows: repeat(2, 50px repeat(2, 100px));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px repeat(2, [a\]); and grid-template-rows: 100px repeat(2, [a\]);] + expected: FAIL + + ['grid' with: grid-template-columns: 100px repeat(2, [a\]); and grid-template-rows: 100px repeat(2, [a\]);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.html.ini new file mode 100644 index 00000000000..33f909bbe5c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.html.ini @@ -0,0 +1,114 @@ +[grid-inline-template-columns-rows-resolved-values-001.html] + ['grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.tentative.html.ini new file mode 100644 index 00000000000..1347a6153ba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-inline-template-columns-rows-resolved-values-001.tentative.html.ini @@ -0,0 +1,228 @@ +[grid-inline-template-columns-rows-resolved-values-001.tentative.html] + ['grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-auto-tracks.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-auto-tracks.html.ini new file mode 100644 index 00000000000..d6c0951b7e1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-auto-tracks.html.ini @@ -0,0 +1,2 @@ +[grid-layout-auto-tracks.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-basic.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-basic.html.ini new file mode 100644 index 00000000000..c8c0b297604 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-basic.html.ini @@ -0,0 +1,2 @@ +[grid-layout-basic.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-repeat-notation.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-repeat-notation.html.ini new file mode 100644 index 00000000000..4f4b973fa03 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-layout-repeat-notation.html.ini @@ -0,0 +1,2 @@ +[grid-layout-repeat-notation.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-limits-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-limits-001.html.ini new file mode 100644 index 00000000000..31185201a37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-limits-001.html.ini @@ -0,0 +1,6 @@ +[grid-limits-001.html] + [repeat(9999) should be supported in both axises] + expected: FAIL + + [Implicit grid should support lines [-10k, 10k\].] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html.ini new file mode 100644 index 00000000000..73685e6f152 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html.ini @@ -0,0 +1,48 @@ +[grid-minimum-contribution-with-percentages.html] + [auto - columns] + expected: FAIL + + [auto - rows] + expected: FAIL + + [min - columns] + expected: FAIL + + [min - rows] + expected: FAIL + + [max - columns] + expected: FAIL + + [max - rows] + expected: FAIL + + [size - columns] + expected: FAIL + + [size - rows] + expected: FAIL + + [min max - columns] + expected: FAIL + + [min max - rows] + expected: FAIL + + [min size - columns] + expected: FAIL + + [min size - rows] + expected: FAIL + + [max size - columns] + expected: FAIL + + [max size - rows] + expected: FAIL + + [min max size - columns] + expected: FAIL + + [min max size - rows] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html.ini new file mode 100644 index 00000000000..bfb06f353c3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html.ini @@ -0,0 +1,312 @@ +[grid-percentage-rows-indefinite-height-001.html] + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL + + [.grid 61] + expected: FAIL + + [.grid 62] + expected: FAIL + + [.grid 63] + expected: FAIL + + [.grid 64] + expected: FAIL + + [.grid 65] + expected: FAIL + + [.grid 66] + expected: FAIL + + [.grid 67] + expected: FAIL + + [.grid 68] + expected: FAIL + + [.grid 69] + expected: FAIL + + [.grid 70] + expected: FAIL + + [.grid 71] + expected: FAIL + + [.grid 72] + expected: FAIL + + [.grid 74] + expected: FAIL + + [.grid 75] + expected: FAIL + + [.grid 76] + expected: FAIL + + [.grid 77] + expected: FAIL + + [.grid 78] + expected: FAIL + + [.grid 80] + expected: FAIL + + [.grid 81] + expected: FAIL + + [.grid 82] + expected: FAIL + + [.grid 83] + expected: FAIL + + [.grid 84] + expected: FAIL + + [.grid 86] + expected: FAIL + + [.grid 87] + expected: FAIL + + [.grid 88] + expected: FAIL + + [.grid 89] + expected: FAIL + + [.grid 90] + expected: FAIL + + [.grid 92] + expected: FAIL + + [.grid 93] + expected: FAIL + + [.grid 94] + expected: FAIL + + [.grid 95] + expected: FAIL + + [.grid 96] + expected: FAIL + + [.grid 98] + expected: FAIL + + [.grid 99] + expected: FAIL + + [.grid 100] + expected: FAIL + + [.grid 101] + expected: FAIL + + [.grid 102] + expected: FAIL + + [.grid 104] + expected: FAIL + + [.grid 105] + expected: FAIL + + [.grid 106] + expected: FAIL + + [.grid 107] + expected: FAIL + + [.grid 108] + expected: FAIL + + [.grid 110] + expected: FAIL + + [.grid 111] + expected: FAIL + + [.grid 112] + expected: FAIL + + [.grid 113] + expected: FAIL + + [.grid 114] + expected: FAIL + + [.grid 116] + expected: FAIL + + [.grid 117] + expected: FAIL + + [.grid 118] + expected: FAIL + + [.grid 119] + expected: FAIL + + [.grid 120] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html.ini new file mode 100644 index 00000000000..0df005234cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html.ini @@ -0,0 +1,12 @@ +[grid-percentage-rows-indefinite-height-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-repeat-max-width-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-repeat-max-width-001.html.ini new file mode 100644 index 00000000000..9fdc3e2c723 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-repeat-max-width-001.html.ini @@ -0,0 +1,2 @@ +[grid-repeat-max-width-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-shorthand-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-shorthand-001.html.ini new file mode 100644 index 00000000000..116eb8d405c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-shorthand-001.html.ini @@ -0,0 +1,6 @@ +[grid-shorthand-001.html] + [Check gutter properties initial values] + expected: FAIL + + [Check gutter properties after setting 'grid' shorthand] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-flexible-lengths-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-flexible-lengths-001.html.ini new file mode 100644 index 00000000000..d382a520cb5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-flexible-lengths-001.html.ini @@ -0,0 +1,186 @@ +[grid-support-flexible-lengths-001.html] + ['emptyGrid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 10fr; and grid-template-rows: 10fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 10fr; and grid-template-rows: 10fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0.5fr; and grid-template-rows: 0.5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0.5fr; and grid-template-rows: 0.5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: .5fr; and grid-template-rows: .5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: .5fr; and grid-template-rows: .5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 1fr); and grid-template-rows: minmax(100px, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 1fr); and grid-template-rows: minmax(100px, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(1fr, 1fr); and grid-template-rows: minmax(1fr, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(1fr, 1fr); and grid-template-rows: minmax(1fr, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0.25fr 0.75fr; and grid-template-rows: 0.25fr 0.75fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0.25fr 0.75fr; and grid-template-rows: 0.25fr 0.75fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 2fr 1fr; and grid-template-rows: 1fr 2fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 2fr 1fr; and grid-template-rows: 1fr 2fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr 4fr 3fr 2fr; and grid-template-rows: auto 1fr 4fr 3fr 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr 4fr 3fr 2fr; and grid-template-rows: auto 1fr 4fr 3fr 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 4fr 100px 3fr 2fr; and grid-template-rows: 1fr 4fr 100px 3fr 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 4fr 100px 3fr 2fr; and grid-template-rows: 1fr 4fr 100px 3fr 2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content 1fr; and grid-template-rows: max-content 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content 1fr; and grid-template-rows: max-content 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content 1fr; and grid-template-rows: min-content 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content 1fr; and grid-template-rows: min-content 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 300px 1fr; and grid-template-rows: 200px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 300px 1fr; and grid-template-rows: 200px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 800px 1fr; and grid-template-rows: 600px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 800px 1fr; and grid-template-rows: 600px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1000px 1fr; and grid-template-rows: 700px 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1000px 1fr; and grid-template-rows: 700px 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(50px + 50%) 1fr; and grid-template-rows: calc(50px + 50%) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: calc(50px + 50%) 1fr; and grid-template-rows: calc(50px + 50%) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 300px) 1fr; and grid-template-rows: minmax(100px, 200px) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 300px) 1fr; and grid-template-rows: minmax(100px, 200px) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(4, 1fr); and grid-template-rows: repeat(4, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(4, 1fr); and grid-template-rows: repeat(4, 1fr);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(4, [b\] 1fr [c\]) [d\]; and grid-template-rows: [z\] repeat(4, [y\] 1fr) [x\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(4, [b\] 1fr [c\]) [d\]; and grid-template-rows: [z\] repeat(4, [y\] 1fr) [x\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: fr; and grid-template-rows: fr;] + expected: FAIL + + ['grid' with: grid-template-columns: fr; and grid-template-rows: fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1 fr; and grid-template-rows: 1 fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1 fr; and grid-template-rows: 1 fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1free-space; and grid-template-rows: 1free-space;] + expected: FAIL + + ['grid' with: grid-template-columns: 1free-space; and grid-template-rows: 1free-space;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: -2fr; and grid-template-rows: -2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: -2fr; and grid-template-rows: -2fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 0,5fr; and grid-template-rows: 0,5fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0,5fr; and grid-template-rows: 0,5fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(1fr + 100px); and grid-template-rows: calc(1fr + 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: calc(1fr + 100px); and grid-template-rows: calc(1fr + 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: (1fr) auto; and grid-template-rows: (1fr) auto;] + expected: FAIL + + ['grid' with: grid-template-columns: (1fr) auto; and grid-template-rows: (1fr) auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(1fr, 1000px); and grid-template-rows: minmax(1fr, 700px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(1fr, 1000px); and grid-template-rows: minmax(1fr, 700px);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-areas-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-areas-001.html.ini new file mode 100644 index 00000000000..3b53069d041 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-areas-001.html.ini @@ -0,0 +1,135 @@ +[grid-support-grid-template-areas-001.html] + ['grid' with: grid-template-areas: none;] + expected: FAIL + + ['grid' with: grid-template-areas: "a";] + expected: FAIL + + ['grid' with: grid-template-areas: ".";] + expected: FAIL + + ['grid' with: grid-template-areas: "lower UPPER 10 -minus _low 1-st ©copy_right line¶";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b""c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b"\t"c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b"\n"c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "a b";] + expected: FAIL + + ['grid' with: grid-template-areas: "a a" "b b";] + expected: FAIL + + ['grid' with: grid-template-areas: ". a ." "b a c";] + expected: FAIL + + ['grid' with: grid-template-areas: ".. a ..." "b a c";] + expected: FAIL + + ['grid' with: grid-template-areas: ".a..." "b a c";] + expected: FAIL + + ['grid' with: grid-template-areas: "head head" "nav main" "foot .";] + expected: FAIL + + ['grid' with: grid-template-areas: "head head" "nav main" "foot ....";] + expected: FAIL + + ['grid' with: grid-template-areas: "head head" "nav main" "foot.";] + expected: FAIL + + ['grid' with: grid-template-areas: ". header header ." "nav main main main" "nav footer footer .";] + expected: FAIL + + ['grid' with: grid-template-areas: "... header header ...." "nav main main main" "nav footer footer ....";] + expected: FAIL + + ['grid' with: grid-template-areas: "...header header...." "nav main main main" "nav footer footer....";] + expected: FAIL + + ['grid' with: grid-template-areas: "title stats" "score stats" "board board" "ctrls ctrls";] + expected: FAIL + + ['grid' with: grid-template-areas: "title board" "stats board" "score ctrls";] + expected: FAIL + + ['grid' with: grid-template-areas: ". a" "b a" ". a";] + expected: FAIL + + ['grid' with: grid-template-areas: ".. a" "b a" "... a";] + expected: FAIL + + ['grid' with: grid-template-areas: "..a" "b a" ".a";] + expected: FAIL + + ['grid' with: grid-template-areas: "a a a" "b b b";] + expected: FAIL + + ['grid' with: grid-template-areas: ". ." "a a";] + expected: FAIL + + ['grid' with: grid-template-areas: "... ...." "a a";] + expected: FAIL + + ['grid' with: grid-template-areas: a;] + expected: FAIL + + ['grid' with: grid-template-areas: "a" "b c";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "c" "d e";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b c" "d e";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b"-"c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" - "c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" . "c d";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b a";] + expected: FAIL + + ['grid' with: grid-template-areas: "a" "b" "a";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "b b";] + expected: FAIL + + ['grid' with: grid-template-areas: "b a" "b b";] + expected: FAIL + + ['grid' with: grid-template-areas: "a b" "b a";] + expected: FAIL + + ['grid' with: grid-template-areas: "a ." ". a";] + expected: FAIL + + ['grid' with: grid-template-areas: ",";] + expected: FAIL + + ['grid' with: grid-template-areas: "10%";] + expected: FAIL + + ['grid' with: grid-template-areas: "USD$";] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-columns-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-columns-rows-001.html.ini new file mode 100644 index 00000000000..d716d9394e5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-grid-template-columns-rows-001.html.ini @@ -0,0 +1,132 @@ +[grid-support-grid-template-columns-rows-001.html] + ['emptyGrid' with: grid-template-columns: none; and grid-template-rows: none;] + expected: FAIL + + ['grid' with: grid-template-columns: none; and grid-template-rows: none;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto; and grid-template-rows: auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto; and grid-template-rows: auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 500px; and grid-template-rows: 300px;] + expected: FAIL + + ['grid' with: grid-template-columns: 500px; and grid-template-rows: 300px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 40em; and grid-template-rows: 20em;] + expected: FAIL + + ['grid' with: grid-template-columns: 40em; and grid-template-rows: 20em;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 25%; and grid-template-rows: 50%;] + expected: FAIL + + ['grid' with: grid-template-columns: 25%; and grid-template-rows: 50%;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: calc(200px + 10%); and grid-template-rows: calc(25% + 50px);] + expected: FAIL + + ['grid' with: grid-template-columns: calc(200px + 10%); and grid-template-rows: calc(25% + 50px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content; and grid-template-rows: max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content; and grid-template-rows: max-content;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content; and grid-template-rows: min-content;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content; and grid-template-rows: min-content;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(200px, 400px); and grid-template-rows: minmax(50px, 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(200px, 400px); and grid-template-rows: minmax(50px, 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(calc(10% + 200px), calc(800px - 20%)); and grid-template-rows: minmax(calc(20% + 50px), calc(600px - 10%));] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(calc(10% + 200px), calc(800px - 20%)); and grid-template-rows: minmax(calc(20% + 50px), calc(600px - 10%));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 500px 200px 50px; and grid-template-rows: 100px 300px;] + expected: FAIL + + ['grid' with: grid-template-columns: 500px 200px 50px; and grid-template-rows: 100px 300px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 40em 100px 15%; and grid-template-rows: 50px 20em 10%;] + expected: FAIL + + ['grid' with: grid-template-columns: 40em 100px 15%; and grid-template-rows: 50px 20em 10%;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 200px 1fr; and grid-template-rows: 1fr 100px;] + expected: FAIL + + ['grid' with: grid-template-columns: 200px 1fr; and grid-template-rows: 1fr 100px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: auto 1fr; and grid-template-rows: auto 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 2fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 2fr 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(25px, 75px) 750px; and grid-template-rows: minmax(50px, 150px) 500px;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(25px, 75px) 750px; and grid-template-rows: minmax(50px, 150px) 500px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: min-content 1fr calc(20px + 10%) minmax(30em, 50em); and grid-template-rows: min-content 1fr calc(10% + 40px) minmax(3em, 5em);] + expected: FAIL + + ['grid' with: grid-template-columns: min-content 1fr calc(20px + 10%) minmax(30em, 50em); and grid-template-rows: min-content 1fr calc(10% + 40px) minmax(3em, 5em);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: foo; and grid-template-rows: bar;] + expected: FAIL + + ['grid' with: grid-template-columns: foo; and grid-template-rows: bar;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto none; and grid-template-rows: none auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto none; and grid-template-rows: none auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px, 200px; and grid-template-rows: 300px, 400px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px, 200px; and grid-template-rows: 300px, 400px;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: minmax(100px, 200px, 300px); and grid-template-rows: minmax(100px, 200px, 300px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(100px, 200px, 300px); and grid-template-rows: minmax(100px, 200px, 300px);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-001.html.ini new file mode 100644 index 00000000000..57bbcd3c40a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-001.html.ini @@ -0,0 +1,240 @@ +[grid-support-named-grid-lines-001.html] + ['emptyGrid' with: grid-template-columns: [first\] auto [last\]; and grid-template-rows: [first\] auto [last\];] + expected: FAIL + + ['grid' with: grid-template-columns: [first\] auto [last\]; and grid-template-rows: [first\] auto [last\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [F1rst-L1_n3\] auto [L4st-L1_n3\]; and grid-template-rows: [F1rst-L1_n3\] auto [L4st-L1_n3\];] + expected: FAIL + + ['grid' with: grid-template-columns: [F1rst-L1_n3\] auto [L4st-L1_n3\]; and grid-template-rows: [F1rst-L1_n3\] auto [L4st-L1_n3\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [\] auto [ \]; and grid-template-rows: [ \] auto [\];] + expected: FAIL + + ['grid' with: grid-template-columns: [\] auto [ \]; and grid-template-rows: [ \] auto [\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [first\] auto; and grid-template-rows: [first\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [first\] auto; and grid-template-rows: [first\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [last\]; and grid-template-rows: auto [last\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto [last\]; and grid-template-rows: auto [last\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [line\] auto [line\]; and grid-template-rows: [line\] auto [line\];] + expected: FAIL + + ['grid' with: grid-template-columns: [line\] auto [line\]; and grid-template-rows: [line\] auto [line\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [first line\] auto [last line\]; and grid-template-rows: [first line\] auto [last line\];] + expected: FAIL + + ['grid' with: grid-template-columns: [first line\] auto [last line\]; and grid-template-rows: [first line\] auto [last line\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [b\] auto [c\]; and grid-template-rows: [a\] auto [b\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [b\] auto [c\]; and grid-template-rows: [a\] auto [b\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [b\] auto [c\]; and grid-template-rows: auto [b\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto [b\] auto [c\]; and grid-template-rows: auto [b\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto auto [c\]; and grid-template-rows: [a\] auto auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto auto [c\]; and grid-template-rows: [a\] auto auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [b\] auto; and grid-template-rows: [a\] auto [b\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [b\] auto; and grid-template-rows: [a\] auto [b\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto auto; and grid-template-rows: [a\] auto auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto auto; and grid-template-rows: [a\] auto auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto [b\] auto; and grid-template-rows: auto [b\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: auto [b\] auto; and grid-template-rows: auto [b\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: auto auto [c\]; and grid-template-rows: auto auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto [c\]; and grid-template-rows: auto auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [a\] auto [a\]; and grid-template-rows: [a\] auto [a\] auto [a\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [a\] auto [a\]; and grid-template-rows: [a\] auto [a\] auto [a\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a b c\] auto [a b c\] auto [a b c\]; and grid-template-rows: [a b c\] auto [a b c\] auto [a b c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a b c\] auto [a b c\] auto [a b c\]; and grid-template-rows: [a b c\] auto [a b c\] auto [a b c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] 40em [b\] 100px [c\] 15% [d\]; and grid-template-rows: [z\] 50px [y\] 20em [x\] 10% [w\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] 40em [b\] 100px [c\] 15% [d\]; and grid-template-rows: [z\] 50px [y\] 20em [x\] 10% [w\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] 200px [b\] 1fr [c\]; and grid-template-rows: [z\] 1fr [y\] 100px [x\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] 200px [b\] 1fr [c\]; and grid-template-rows: [z\] 1fr [y\] 100px [x\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] min-content [b\] 1fr [c\] calc(20px + 10%) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content [y\] 1fr [x\] calc(10% + 40px) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] min-content [b\] 1fr [c\] calc(20px + 10%) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content [y\] 1fr [x\] calc(10% + 40px) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\]; and grid-template-rows: [a\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\]; and grid-template-rows: [a\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a b\]; and grid-template-rows: [a b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a b\]; and grid-template-rows: [a b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] none [b\]; and grid-template-rows: [a\] none [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] none [b\]; and grid-template-rows: [a\] none [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] [b\]; and grid-template-rows: [a\] [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] [b\]; and grid-template-rows: [a\] [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: a auto b; and grid-template-rows: a auto b;] + expected: FAIL + + ['grid' with: grid-template-columns: a auto b; and grid-template-rows: a auto b;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: (a) auto (b); and grid-template-rows: (a) auto (b);] + expected: FAIL + + ['grid' with: grid-template-columns: (a) auto (b); and grid-template-rows: (a) auto (b);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 'a' auto 'b'; and grid-template-rows: 'a' auto 'b';] + expected: FAIL + + ['grid' with: grid-template-columns: 'a' auto 'b'; and grid-template-rows: 'a' auto 'b';] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: "a" auto "b"; and grid-template-rows: "a" auto "b";] + expected: FAIL + + ['grid' with: grid-template-columns: "a" auto "b"; and grid-template-rows: "a" auto "b";] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a, b\] auto [a, b\]; and grid-template-rows: [a, b\] auto [a, b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a, b\] auto [a, b\]; and grid-template-rows: [a, b\] auto [a, b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] [b\] auto [c d\] [e\]; and grid-template-rows: [a\] [b\] auto [c d\] [e\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] [b\] auto [c d\] [e\]; and grid-template-rows: [a\] [b\] auto [c d\] [e\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a [b\]\] auto [c\]; and grid-template-rows: [a [b\]\] auto [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a [b\]\] auto [c\]; and grid-template-rows: [a [b\]\] auto [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto [[b\]\]; and grid-template-rows: [a\] auto [[b\]\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto [[b\]\]; and grid-template-rows: [a\] auto [[b\]\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a auto [b\]; and grid-template-rows: [a auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a auto [b\]; and grid-template-rows: [a auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a 100px\] auto [b\]; and grid-template-rows: [a 100px\] auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a 100px\] auto [b\]; and grid-template-rows: [a 100px\] auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a 50%\] auto [b\]; and grid-template-rows: [a 50%\] auto [b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a 50%\] auto [b\]; and grid-template-rows: [a 50%\] auto [b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [5\] auto [10\]; and grid-template-rows: [5\] auto [10\];] + expected: FAIL + + ['grid' with: grid-template-columns: [5\] auto [10\]; and grid-template-rows: [5\] auto [10\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a.\] auto [b*\]; and grid-template-rows: [a.\] auto [b*\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a.\] auto [b*\]; and grid-template-rows: [a.\] auto [b*\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [#a\] auto [$b\]; and grid-template-rows: [#a\] auto [$b\];] + expected: FAIL + + ['grid' with: grid-template-columns: [#a\] auto [$b\]; and grid-template-rows: [#a\] auto [$b\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [initial\] auto; and grid-template-rows: [initial\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [initial\] auto; and grid-template-rows: [initial\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [inherit\] auto; and grid-template-rows: [inherit\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [inherit\] auto; and grid-template-rows: [inherit\] auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [default\] auto; and grid-template-rows: [default\] auto;] + expected: FAIL + + ['grid' with: grid-template-columns: [default\] auto; and grid-template-rows: [default\] auto;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-002.html.ini new file mode 100644 index 00000000000..433542d206d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-002.html.ini @@ -0,0 +1,2 @@ +[grid-support-named-grid-lines-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-003.html.ini new file mode 100644 index 00000000000..31dac385fcc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-named-grid-lines-003.html.ini @@ -0,0 +1,2 @@ +[grid-support-named-grid-lines-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-001.html.ini new file mode 100644 index 00000000000..5d1cb160c3f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-001.html.ini @@ -0,0 +1,120 @@ +[grid-support-repeat-001.html] + ['emptyGrid' with: grid-template-columns: repeat(1, auto); and grid-template-rows: repeat(1, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(1, auto); and grid-template-rows: repeat(1, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, auto); and grid-template-rows: repeat(2, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, auto); and grid-template-rows: repeat(2, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, minmax(50px, calc(50px + 50%))); and grid-template-rows: repeat(2, minmax(50px, calc(50px + 50%)));] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, minmax(50px, calc(50px + 50%))); and grid-template-rows: repeat(2, minmax(50px, calc(50px + 50%)));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(5, 10%); and grid-template-rows: repeat(5, 10%);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(5, 10%); and grid-template-rows: repeat(5, 10%);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: max-content repeat(2, 25%) 1fr; and grid-template-rows: 100px repeat(2, 25%) 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content repeat(2, 25%) 1fr; and grid-template-rows: max-content repeat(2, 25%) 1fr;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, min-content 50px); and grid-template-rows: repeat(2, min-content 50px);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, min-content 50px); and grid-template-rows: repeat(2, min-content 50px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]); and grid-template-rows: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]); and grid-template-rows: repeat(2, [a\] minmax(50px, 100px) [b\] 25em [c\]);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, auto [b\] 100px) [c\]; and grid-template-rows: [a\] repeat(2, auto [b\] 100px) [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, auto [b\] 100px) [c\]; and grid-template-rows: [a\] repeat(2, auto [b\] 100px) [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] auto repeat(2, [b\] 100px) [c\]; and grid-template-rows: [a\] auto repeat(2, [b\] 100px) [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] auto repeat(2, [b\] 100px) [c\]; and grid-template-rows: [a\] auto repeat(2, [b\] 100px) [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, auto [b\]) 100px [c\]; and grid-template-rows: [a\] repeat(2, auto [b\]) 100px [c\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, auto [b\]) 100px [c\]; and grid-template-rows: [a\] repeat(2, auto [b\]) 100px [c\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, [b\] 100px); and grid-template-rows: [a\] repeat(2, [b\] 100px);] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, [b\] 100px); and grid-template-rows: [a\] repeat(2, [b\] 100px);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] repeat(2, [b\] auto [c\]) [d\]; and grid-template-rows: [a\] repeat(2, [b\] auto [c\]) [d\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] repeat(2, [b\] auto [c\]) [d\]; and grid-template-rows: [a\] repeat(2, [b\] auto [c\]) [d\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: [a\] min-content repeat(2, [b\] 1fr [c\] calc(20px + 10%)) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content repeat(2, [y\] 1fr [x\] calc(10% + 40px)) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['grid' with: grid-template-columns: [a\] min-content repeat(2, [b\] 1fr [c\] calc(20px + 10%)) [d\] minmax(30em, 50em) [e\]; and grid-template-rows: [z\] min-content repeat(2, [y\] 1fr [x\] calc(10% + 40px)) [w\] minmax(3em, 5em) [v\];] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(-1, auto); and grid-template-rows: repeat(-1, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(-1, auto); and grid-template-rows: repeat(-1, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(auto, 2); and grid-template-rows: repeat(auto, 2);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(auto, 2); and grid-template-rows: repeat(auto, 2);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat 2, auto; and grid-template-rows: repeat 2, auto;] + expected: FAIL + + ['grid' with: grid-template-columns: repeat 2, auto; and grid-template-rows: repeat 2, auto;] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2 auto); and grid-template-rows: repeat(2 auto);] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2 auto); and grid-template-rows: repeat(2 auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px (repeat 2, auto); and grid-template-rows: (repeat 2, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: 100px (repeat 2, auto); and grid-template-rows: (repeat 2, auto);] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: repeat(2, 50px repeat(2, 100px)); and grid-template-rows: repeat(2, 50px repeat(2, 100px));] + expected: FAIL + + ['grid' with: grid-template-columns: repeat(2, 50px repeat(2, 100px)); and grid-template-rows: repeat(2, 50px repeat(2, 100px));] + expected: FAIL + + ['emptyGrid' with: grid-template-columns: 100px repeat(2, [a\]); and grid-template-rows: 100px repeat(2, [a\]);] + expected: FAIL + + ['grid' with: grid-template-columns: 100px repeat(2, [a\]); and grid-template-rows: 100px repeat(2, [a\]);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-002.html.ini new file mode 100644 index 00000000000..8519b979c37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-support-repeat-002.html.ini @@ -0,0 +1,21 @@ +[grid-support-repeat-002.html] + [grid-template-columns: repeat(-1, auto); and grid-template-rows: repeat(-1, auto);] + expected: FAIL + + [grid-template-columns: repeat(auto, 2); and grid-template-rows: repeat(auto, 2);] + expected: FAIL + + [grid-template-columns: repeat 2, auto; and grid-template-rows: repeat 2, auto;] + expected: FAIL + + [grid-template-columns: repeat(2 auto); and grid-template-rows: repeat(2 auto);] + expected: FAIL + + [grid-template-columns: 100px (repeat 2, auto); and grid-template-rows: 100px (repeat 2, auto);] + expected: FAIL + + [grid-template-columns: repeat(2, 50px repeat(2, 100px)); and grid-template-rows: repeat(2, 50px repeat(2, 100px));] + expected: FAIL + + [grid-template-columns: 100px repeat(2, [a\]); and grid-template-rows: 100px repeat(2, [a\]);] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-changes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-changes-001.html.ini new file mode 100644 index 00000000000..66b2078e5e0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-changes-001.html.ini @@ -0,0 +1,63 @@ +[grid-template-columns-rows-changes-001.html] + [#constrainedGrid 1] + expected: FAIL + + [#constrainedGrid 2] + expected: FAIL + + [#constrainedGrid 3] + expected: FAIL + + [#constrainedGrid 4] + expected: FAIL + + [#constrainedGrid 5] + expected: FAIL + + [#constrainedGrid 6] + expected: FAIL + + [#constrainedGridUndefinedHeight 7] + expected: FAIL + + [#constrainedGridUndefinedHeight 8] + expected: FAIL + + [#constrainedGridUndefinedHeight 9] + expected: FAIL + + [#constrainedGridUndefinedHeight 10] + expected: FAIL + + [#constrainedGridUndefinedHeight 11] + expected: FAIL + + [#constrainedGridUndefinedHeight 12] + expected: FAIL + + [#unconstrainedGrid 13] + expected: FAIL + + [#unconstrainedGrid 14] + expected: FAIL + + [#unconstrainedGrid 15] + expected: FAIL + + [#unconstrainedGrid 16] + expected: FAIL + + [#unconstrainedGrid 17] + expected: FAIL + + [#unconstrainedGrid 18] + expected: FAIL + + [#unconstrainedGrid 19] + expected: FAIL + + [#unconstrainedGrid 20] + expected: FAIL + + [#unconstrainedGrid 21] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.html.ini new file mode 100644 index 00000000000..9bbf21b7206 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.html.ini @@ -0,0 +1,114 @@ +[grid-template-columns-rows-resolved-values-001.html] + ['grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.tentative.html.ini new file mode 100644 index 00000000000..5f3f5713208 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-definition/grid-template-columns-rows-resolved-values-001.tentative.html.ini @@ -0,0 +1,228 @@ +[grid-template-columns-rows-resolved-values-001.tentative.html] + ['grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: auto auto; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'grid' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: ;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + [Children of 'gridItemsPositions' with: grid-template-columns: 60px 50px; and grid-template-rows: 60px 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: auto auto;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: ; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px;] + expected: FAIL + + ['gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + [Children of 'gridAutoFlowColumn' with: grid-template-columns: 100px 60px; and grid-template-rows: 50px 30px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: ;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: ; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px; and grid-template-rows: 60px 70px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px;] + expected: FAIL + + ['gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL + + [Children of 'gridAutoFlowColumnItemsPositions' with: grid-template-columns: 60px 70px; and grid-template-rows: 60px 70px;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-important.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-important.html.ini new file mode 100644 index 00000000000..b0608e5a7d7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-important.html.ini @@ -0,0 +1,3 @@ +[grid-important.html] + [CSS Grid: !important flag parsing] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-in-table-cell-with-img.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-in-table-cell-with-img.html.ini new file mode 100644 index 00000000000..48f316e2b3d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-in-table-cell-with-img.html.ini @@ -0,0 +1,2 @@ +[grid-in-table-cell-with-img.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/anonymous-grid-item-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/anonymous-grid-item-001.html.ini new file mode 100644 index 00000000000..e3a33ce7895 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/anonymous-grid-item-001.html.ini @@ -0,0 +1,2 @@ +[anonymous-grid-item-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-001.html.ini new file mode 100644 index 00000000000..1ad29e41fed --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-001.html.ini @@ -0,0 +1,2 @@ +[aspect-ratio-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-002.html.ini new file mode 100644 index 00000000000..6101b394b0a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-002.html.ini @@ -0,0 +1,2 @@ +[aspect-ratio-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-003.html.ini new file mode 100644 index 00000000000..c7f59630547 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-003.html.ini @@ -0,0 +1,2 @@ +[aspect-ratio-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-004.html.ini new file mode 100644 index 00000000000..f0aa608d5d2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-004.html.ini @@ -0,0 +1,2 @@ +[aspect-ratio-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-005.html.ini new file mode 100644 index 00000000000..04914089239 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/aspect-ratio-005.html.ini @@ -0,0 +1,2 @@ +[aspect-ratio-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/explicitly-sized-grid-item-as-table.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/explicitly-sized-grid-item-as-table.html.ini new file mode 100644 index 00000000000..1ab12e926a9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/explicitly-sized-grid-item-as-table.html.ini @@ -0,0 +1,2 @@ +[explicitly-sized-grid-item-as-table.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-auto-margin-and-replaced-item-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-auto-margin-and-replaced-item-001.html.ini new file mode 100644 index 00000000000..8c0fc3310eb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-auto-margin-and-replaced-item-001.html.ini @@ -0,0 +1,2 @@ +[grid-auto-margin-and-replaced-item-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-automatic-minimum-intrinsic-aspect-ratio-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-automatic-minimum-intrinsic-aspect-ratio-001.html.ini new file mode 100644 index 00000000000..ad4ec3c061b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-automatic-minimum-intrinsic-aspect-ratio-001.html.ini @@ -0,0 +1,42 @@ +[grid-automatic-minimum-intrinsic-aspect-ratio-001.html] + [.container 1] + expected: FAIL + + [.container 2] + expected: FAIL + + [.container 3] + expected: FAIL + + [.container 4] + expected: FAIL + + [.container 5] + expected: FAIL + + [.container 6] + expected: FAIL + + [.container 7] + expected: FAIL + + [.container 8] + expected: FAIL + + [.container 9] + expected: FAIL + + [.container 10] + expected: FAIL + + [.container 11] + expected: FAIL + + [.container 12] + expected: FAIL + + [.container 13] + expected: FAIL + + [.container 14] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-img-item-percent-max-height-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-img-item-percent-max-height-001.html.ini new file mode 100644 index 00000000000..0554ac3743f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-img-item-percent-max-height-001.html.ini @@ -0,0 +1,2 @@ +[grid-img-item-percent-max-height-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-001.html.ini new file mode 100644 index 00000000000..96c1b44cd9b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-002.html.ini new file mode 100644 index 00000000000..dc21d534b81 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-002.html.ini @@ -0,0 +1,2 @@ +[grid-inline-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-003.html.ini new file mode 100644 index 00000000000..a2ec6237a49 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-003.html.ini @@ -0,0 +1,2 @@ +[grid-inline-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-inline-blocks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-inline-blocks-001.html.ini new file mode 100644 index 00000000000..1f097be803a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-items-inline-blocks-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-items-inline-blocks-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-001.html.ini new file mode 100644 index 00000000000..45cf6fc0460 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-002.html.ini new file mode 100644 index 00000000000..4ff1ef0fe2d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-002.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-003.html.ini new file mode 100644 index 00000000000..837fbd2a8c1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-003.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-004.html.ini new file mode 100644 index 00000000000..fd41d4c1a42 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-004.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-005.html.ini new file mode 100644 index 00000000000..293ed0639f2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-005.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-001.html.ini new file mode 100644 index 00000000000..eb2233d3700 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-002.html.ini new file mode 100644 index 00000000000..cb9905e7a27 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-002.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-003.html.ini new file mode 100644 index 00000000000..f3a786abf7b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-003.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-004.html.ini new file mode 100644 index 00000000000..03f883fbceb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-004.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-005.html.ini new file mode 100644 index 00000000000..f89f4e9cfbe --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-005.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-006.html.ini new file mode 100644 index 00000000000..479e338b1fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-inline-z-axis-ordering-overlapped-items-006.html.ini @@ -0,0 +1,2 @@ +[grid-inline-z-axis-ordering-overlapped-items-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-001.html.ini new file mode 100644 index 00000000000..a63e6010c69 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-001.html.ini @@ -0,0 +1,2 @@ +[grid-item-containing-block-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-002.html.ini new file mode 100644 index 00000000000..e34679de092 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-002.html.ini @@ -0,0 +1,2 @@ +[grid-item-containing-block-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-003.html.ini new file mode 100644 index 00000000000..6b5b4599316 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-003.html.ini @@ -0,0 +1,2 @@ +[grid-item-containing-block-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-004.html.ini new file mode 100644 index 00000000000..279ac5a1a7a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-containing-block-004.html.ini @@ -0,0 +1,2 @@ +[grid-item-containing-block-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001.html.ini new file mode 100644 index 00000000000..8c97ea60744 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001.html.ini @@ -0,0 +1,6 @@ +[grid-item-dynamic-min-contribution-001.html] + [Minimum size: auto] + expected: FAIL + + [Minimum size: 0%] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-001.html.ini new file mode 100644 index 00000000000..4e419a0a4ea --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-001.html.ini @@ -0,0 +1,2 @@ +[grid-item-inline-contribution-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-002.html.ini new file mode 100644 index 00000000000..9612d9da81e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-002.html.ini @@ -0,0 +1,2 @@ +[grid-item-inline-contribution-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-003.html.ini new file mode 100644 index 00000000000..4556846a007 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-inline-contribution-003.html.ini @@ -0,0 +1,2 @@ +[grid-item-inline-contribution-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-min-auto-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-min-auto-size-001.html.ini new file mode 100644 index 00000000000..06161eb11d0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-min-auto-size-001.html.ini @@ -0,0 +1,6 @@ +[grid-item-min-auto-size-001.html] + [Computed min-width/min-height of specified auto inside display:none which would otherwise have been a grid item.] + expected: FAIL + + [Computed min-width/min-height of specified auto with display:none which would otherwise have been a grid item.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-overflow-auto-max-height-percentage.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-overflow-auto-max-height-percentage.html.ini new file mode 100644 index 00000000000..683d0fd8254 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-overflow-auto-max-height-percentage.html.ini @@ -0,0 +1,2 @@ +[grid-item-overflow-auto-max-height-percentage.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-001.html.ini new file mode 100644 index 00000000000..647d8b276b7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-001.html.ini @@ -0,0 +1,2 @@ +[grid-item-percentage-sizes-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-002.html.ini new file mode 100644 index 00000000000..13413a66329 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-002.html.ini @@ -0,0 +1,2 @@ +[grid-item-percentage-sizes-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-003.html.ini new file mode 100644 index 00000000000..dca16720afa --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-item-percentage-sizes-003.html.ini @@ -0,0 +1,2 @@ +[grid-item-percentage-sizes-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-001.html.ini new file mode 100644 index 00000000000..e51c666f6fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-001.html.ini @@ -0,0 +1,2 @@ +[grid-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-002.html.ini new file mode 100644 index 00000000000..b21bb7ba631 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-002.html.ini @@ -0,0 +1,2 @@ +[grid-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-003.html.ini new file mode 100644 index 00000000000..c7663fd15e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-003.html.ini @@ -0,0 +1,2 @@ +[grid-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-contribution-negative-margins.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-contribution-negative-margins.html.ini new file mode 100644 index 00000000000..ae6a5ad0492 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-contribution-negative-margins.html.ini @@ -0,0 +1,2 @@ +[grid-items-contribution-negative-margins.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-inline-blocks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-inline-blocks-001.html.ini new file mode 100644 index 00000000000..1c0bb4bc56b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-inline-blocks-001.html.ini @@ -0,0 +1,2 @@ +[grid-items-inline-blocks-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-height-orthogonal-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-height-orthogonal-001.html.ini new file mode 100644 index 00000000000..f8ac39b8ca9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-height-orthogonal-001.html.ini @@ -0,0 +1,138 @@ +[grid-items-minimum-height-orthogonal-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-001.html.ini new file mode 100644 index 00000000000..99a7857e1d5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-001.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-002.html.ini new file mode 100644 index 00000000000..1567b31d2ac --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-002.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-001.html.ini new file mode 100644 index 00000000000..c563eecc6a1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-001.html.ini @@ -0,0 +1,138 @@ +[grid-items-minimum-width-orthogonal-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-002.html.ini new file mode 100644 index 00000000000..3d377ea3f09 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-orthogonal-002.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-orthogonal-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-001.html.ini new file mode 100644 index 00000000000..cd029fedab3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-001.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-vertical-lr-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-002.html.ini new file mode 100644 index 00000000000..1fe35ffc308 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-lr-002.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-vertical-lr-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-001.html.ini new file mode 100644 index 00000000000..5548d804463 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-001.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-vertical-rl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-002.html.ini new file mode 100644 index 00000000000..85644ee52a1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-minimum-width-vertical-rl-002.html.ini @@ -0,0 +1,132 @@ +[grid-items-minimum-width-vertical-rl-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-001.html.ini new file mode 100644 index 00000000000..491c2f72def --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-002.html.ini new file mode 100644 index 00000000000..040eabfe51b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-003.html.ini new file mode 100644 index 00000000000..4b6a967b39d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-003.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-004.html.ini new file mode 100644 index 00000000000..a89715d83d7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-004.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-005.html.ini new file mode 100644 index 00000000000..9a5bf5f1dcf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-005.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-006.html.ini new file mode 100644 index 00000000000..6a02f497463 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-006.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-007.html.ini new file mode 100644 index 00000000000..48caed70d82 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-007.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-011.html.ini new file mode 100644 index 00000000000..32658aa2367 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-011.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-012.html.ini new file mode 100644 index 00000000000..28ba9596cf2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-012.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-013.html.ini new file mode 100644 index 00000000000..f0a3edc218b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-013.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-014.html.ini new file mode 100644 index 00000000000..3dc02145d4d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-014.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-margins-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html.ini new file mode 100644 index 00000000000..1f8f6dc96e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-vertical-lr-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html.ini new file mode 100644 index 00000000000..91ffce31bda --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-vertical-lr-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html.ini new file mode 100644 index 00000000000..9dd4647245d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-vertical-rl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html.ini new file mode 100644 index 00000000000..b17421c7019 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-margins-vertical-rl-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-001.html.ini new file mode 100644 index 00000000000..ffd7434b8b9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-002.html.ini new file mode 100644 index 00000000000..bd32df56ea8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-003.html.ini new file mode 100644 index 00000000000..b1295db7783 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-003.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-paddings-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-007.html.ini new file mode 100644 index 00000000000..eb700638775 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-007.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-paddings-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-011.html.ini new file mode 100644 index 00000000000..d23c4e05ace --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-011.html.ini @@ -0,0 +1,2 @@ +[grid-items-percentage-paddings-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-015.html.ini new file mode 100644 index 00000000000..098c6d886d9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-015.html.ini @@ -0,0 +1,3 @@ +[grid-items-percentage-paddings-015.html] + [#target 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html.ini new file mode 100644 index 00000000000..c6bdfbb5952 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-vertical-lr-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html.ini new file mode 100644 index 00000000000..8fc11469626 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-vertical-lr-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html.ini new file mode 100644 index 00000000000..7b80dac6529 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-vertical-rl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html.ini new file mode 100644 index 00000000000..b85c11265ec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html.ini @@ -0,0 +1,24 @@ +[grid-items-percentage-paddings-vertical-rl-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-001.html.ini new file mode 100644 index 00000000000..f3c56105525 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-001.html.ini @@ -0,0 +1,18 @@ +[grid-items-relative-offsets-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-002.html.ini new file mode 100644 index 00000000000..f266fcf3e5f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-relative-offsets-002.html.ini @@ -0,0 +1,18 @@ +[grid-items-relative-offsets-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-sizing-alignment-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-sizing-alignment-001.html.ini new file mode 100644 index 00000000000..6aa3cfc911a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-items-sizing-alignment-001.html.ini @@ -0,0 +1,2 @@ +[grid-items-sizing-alignment-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-grid-in-grid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-grid-in-grid.html.ini new file mode 100644 index 00000000000..eab0fc3d12d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-grid-in-grid.html.ini @@ -0,0 +1,2 @@ +[grid-layout-grid-in-grid.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-a.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-a.html.ini new file mode 100644 index 00000000000..64b4b2b480e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-a.html.ini @@ -0,0 +1,2 @@ +[grid-layout-z-order-a.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-b.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-b.html.ini new file mode 100644 index 00000000000..7573aba43fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-layout-z-order-b.html.ini @@ -0,0 +1,2 @@ +[grid-layout-z-order-b.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-001.html.ini new file mode 100644 index 00000000000..53781d73ba6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-001.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-002.html.ini new file mode 100644 index 00000000000..e05644ef8c7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-002.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-007.html.ini new file mode 100644 index 00000000000..33ebeaa4e01 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-007.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-009.html.ini new file mode 100644 index 00000000000..9994c1da6eb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-009.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-010.html.ini new file mode 100644 index 00000000000..6d4319f4757 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-010.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-011.html.ini new file mode 100644 index 00000000000..5473b6be5df --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-011.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-012.html.ini new file mode 100644 index 00000000000..503edb1d7f1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-012.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-013.html.ini new file mode 100644 index 00000000000..348afd25e36 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-013.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-014.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-014.html.ini new file mode 100644 index 00000000000..e249de5021f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-014.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-014.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-015.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-015.html.ini new file mode 100644 index 00000000000..24857c2ef55 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-015.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-015.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-016.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-016.html.ini new file mode 100644 index 00000000000..4f6b18e9d54 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-016.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-016.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-017.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-017.html.ini new file mode 100644 index 00000000000..082ce4ead37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-017.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-017.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-018.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-018.html.ini new file mode 100644 index 00000000000..54e244fa0d8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-018.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-018.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-019.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-019.html.ini new file mode 100644 index 00000000000..3117a50db74 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-019.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-019.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-020.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-020.html.ini new file mode 100644 index 00000000000..6e1d4445741 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-020.html.ini @@ -0,0 +1,2 @@ +[grid-minimum-size-grid-items-020.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html.ini new file mode 100644 index 00000000000..df9c49100ba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html.ini @@ -0,0 +1,216 @@ +[grid-minimum-size-grid-items-021.html] + [grid-1.width] + expected: FAIL + + [grid-1.height] + expected: FAIL + + [grid-1.gridTemplateColumns] + expected: FAIL + + [grid-1.gridTemplateRows] + expected: FAIL + + [grid-2.gridTemplateColumns] + expected: FAIL + + [grid-2.gridTemplateRows] + expected: FAIL + + [grid-3.height] + expected: FAIL + + [grid-3.gridTemplateColumns] + expected: FAIL + + [grid-3.gridTemplateRows] + expected: FAIL + + [grid-4.gridTemplateColumns] + expected: FAIL + + [grid-4.gridTemplateRows] + expected: FAIL + + [grid-5.height] + expected: FAIL + + [grid-5.gridTemplateColumns] + expected: FAIL + + [grid-5.gridTemplateRows] + expected: FAIL + + [img-5.width] + expected: FAIL + + [img-5.height] + expected: FAIL + + [grid-6.gridTemplateColumns] + expected: FAIL + + [grid-6.gridTemplateRows] + expected: FAIL + + [img-6.width] + expected: FAIL + + [img-6.height] + expected: FAIL + + [grid-7.width] + expected: FAIL + + [grid-7.height] + expected: FAIL + + [grid-7.gridTemplateColumns] + expected: FAIL + + [grid-7.gridTemplateRows] + expected: FAIL + + [grid-8.gridTemplateColumns] + expected: FAIL + + [grid-8.gridTemplateRows] + expected: FAIL + + [grid-9.height] + expected: FAIL + + [grid-9.gridTemplateColumns] + expected: FAIL + + [grid-9.gridTemplateRows] + expected: FAIL + + [grid-10.gridTemplateColumns] + expected: FAIL + + [grid-10.gridTemplateRows] + expected: FAIL + + [grid-11.height] + expected: FAIL + + [grid-11.gridTemplateColumns] + expected: FAIL + + [grid-11.gridTemplateRows] + expected: FAIL + + [img-11.width] + expected: FAIL + + [img-11.height] + expected: FAIL + + [grid-12.gridTemplateColumns] + expected: FAIL + + [grid-12.gridTemplateRows] + expected: FAIL + + [img-12.width] + expected: FAIL + + [img-12.height] + expected: FAIL + + [grid-13.width] + expected: FAIL + + [grid-13.height] + expected: FAIL + + [grid-13.gridTemplateColumns] + expected: FAIL + + [grid-13.gridTemplateRows] + expected: FAIL + + [grid-14.gridTemplateColumns] + expected: FAIL + + [grid-14.gridTemplateRows] + expected: FAIL + + [grid-15.height] + expected: FAIL + + [grid-15.gridTemplateColumns] + expected: FAIL + + [grid-15.gridTemplateRows] + expected: FAIL + + [grid-16.gridTemplateColumns] + expected: FAIL + + [grid-16.gridTemplateRows] + expected: FAIL + + [grid-17.height] + expected: FAIL + + [grid-17.gridTemplateColumns] + expected: FAIL + + [grid-17.gridTemplateRows] + expected: FAIL + + [grid-18.gridTemplateColumns] + expected: FAIL + + [grid-18.gridTemplateRows] + expected: FAIL + + [grid-19.width] + expected: FAIL + + [grid-19.height] + expected: FAIL + + [grid-19.gridTemplateColumns] + expected: FAIL + + [grid-19.gridTemplateRows] + expected: FAIL + + [grid-20.gridTemplateColumns] + expected: FAIL + + [grid-20.gridTemplateRows] + expected: FAIL + + [grid-21.height] + expected: FAIL + + [grid-21.gridTemplateColumns] + expected: FAIL + + [grid-21.gridTemplateRows] + expected: FAIL + + [grid-22.gridTemplateColumns] + expected: FAIL + + [grid-22.gridTemplateRows] + expected: FAIL + + [grid-23.height] + expected: FAIL + + [grid-23.gridTemplateColumns] + expected: FAIL + + [grid-23.gridTemplateRows] + expected: FAIL + + [grid-24.gridTemplateColumns] + expected: FAIL + + [grid-24.gridTemplateRows] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html.ini new file mode 100644 index 00000000000..10085606732 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html.ini @@ -0,0 +1,135 @@ +[grid-minimum-size-grid-items-022.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html.ini new file mode 100644 index 00000000000..4b7e6e7334b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html.ini @@ -0,0 +1,180 @@ +[grid-minimum-size-grid-items-023.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html.ini new file mode 100644 index 00000000000..1c1dd104aa2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html.ini @@ -0,0 +1,135 @@ +[grid-minimum-size-grid-items-024.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html.ini new file mode 100644 index 00000000000..99fff3ad6f8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html.ini @@ -0,0 +1,180 @@ +[grid-minimum-size-grid-items-025.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL + + [.grid 25] + expected: FAIL + + [.grid 26] + expected: FAIL + + [.grid 27] + expected: FAIL + + [.grid 28] + expected: FAIL + + [.grid 29] + expected: FAIL + + [.grid 30] + expected: FAIL + + [.grid 31] + expected: FAIL + + [.grid 32] + expected: FAIL + + [.grid 33] + expected: FAIL + + [.grid 34] + expected: FAIL + + [.grid 35] + expected: FAIL + + [.grid 36] + expected: FAIL + + [.grid 37] + expected: FAIL + + [.grid 38] + expected: FAIL + + [.grid 39] + expected: FAIL + + [.grid 40] + expected: FAIL + + [.grid 41] + expected: FAIL + + [.grid 42] + expected: FAIL + + [.grid 43] + expected: FAIL + + [.grid 44] + expected: FAIL + + [.grid 45] + expected: FAIL + + [.grid 46] + expected: FAIL + + [.grid 47] + expected: FAIL + + [.grid 48] + expected: FAIL + + [.grid 49] + expected: FAIL + + [.grid 50] + expected: FAIL + + [.grid 51] + expected: FAIL + + [.grid 52] + expected: FAIL + + [.grid 53] + expected: FAIL + + [.grid 54] + expected: FAIL + + [.grid 55] + expected: FAIL + + [.grid 56] + expected: FAIL + + [.grid 57] + expected: FAIL + + [.grid 58] + expected: FAIL + + [.grid 59] + expected: FAIL + + [.grid 60] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-size-with-orthogonal-child-dynamic.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-size-with-orthogonal-child-dynamic.html.ini new file mode 100644 index 00000000000..81213664b94 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-size-with-orthogonal-child-dynamic.html.ini @@ -0,0 +1,2 @@ +[grid-size-with-orthogonal-child-dynamic.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-001.html.ini new file mode 100644 index 00000000000..3a9b399710f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-001.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-002.html.ini new file mode 100644 index 00000000000..3702bfaad3d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-002.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-003.html.ini new file mode 100644 index 00000000000..0a3c12ac1bf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-003.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-004.html.ini new file mode 100644 index 00000000000..221e23ddb98 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-004.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-005.html.ini new file mode 100644 index 00000000000..43014f76ca9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-005.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-001.html.ini new file mode 100644 index 00000000000..98556a4a8ca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-001.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-002.html.ini new file mode 100644 index 00000000000..c947cd0caf8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-002.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-003.html.ini new file mode 100644 index 00000000000..80644b4df38 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-003.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-004.html.ini new file mode 100644 index 00000000000..c6498b7b9c0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-004.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-005.html.ini new file mode 100644 index 00000000000..c214befe848 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-005.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-006.html.ini new file mode 100644 index 00000000000..b4f85a68692 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-006.html.ini @@ -0,0 +1,2 @@ +[grid-z-axis-ordering-overlapped-items-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-margin-dynamic.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-margin-dynamic.html.ini new file mode 100644 index 00000000000..778674628bc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-margin-dynamic.html.ini @@ -0,0 +1,2 @@ +[percentage-margin-dynamic.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html.ini new file mode 100644 index 00000000000..133e02f86e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html.ini @@ -0,0 +1,2 @@ +[percentage-size-replaced-subitems-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-001.html.ini new file mode 100644 index 00000000000..737426ab549 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-001.html.ini @@ -0,0 +1,2 @@ +[percentage-size-subitems-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-002.html.ini new file mode 100644 index 00000000000..f5817fbecc7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/percentage-size-subitems-002.html.ini @@ -0,0 +1,2 @@ +[percentage-size-subitems-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-001.html.ini new file mode 100644 index 00000000000..5c831df5045 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-001.html.ini @@ -0,0 +1,2 @@ +[replaced-element-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-002.html.ini new file mode 100644 index 00000000000..9be1a75b5c6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-002.html.ini @@ -0,0 +1,2 @@ +[replaced-element-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-007.html.ini new file mode 100644 index 00000000000..397bca2e36d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-007.html.ini @@ -0,0 +1,2 @@ +[replaced-element-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-010.html.ini new file mode 100644 index 00000000000..5306fd2e947 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-010.html.ini @@ -0,0 +1,2 @@ +[replaced-element-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-011.html.ini new file mode 100644 index 00000000000..873bd786ed2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-011.html.ini @@ -0,0 +1,2 @@ +[replaced-element-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-012.html.ini new file mode 100644 index 00000000000..f0f4f86b8fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-012.html.ini @@ -0,0 +1,2 @@ +[replaced-element-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-013.html.ini new file mode 100644 index 00000000000..e31d7aaca38 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/replaced-element-013.html.ini @@ -0,0 +1,2 @@ +[replaced-element-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/whitespace-in-grid-item-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/whitespace-in-grid-item-001.html.ini new file mode 100644 index 00000000000..2cc0e5f26ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-items/whitespace-in-grid-item-001.html.ini @@ -0,0 +1,2 @@ +[whitespace-in-grid-item-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-layout-properties.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-layout-properties.html.ini new file mode 100644 index 00000000000..c50d8b963f7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-layout-properties.html.ini @@ -0,0 +1,420 @@ +[grid-layout-properties.html] + [display: grid] + expected: FAIL + + [display: inline-grid] + expected: FAIL + + [grid-template-columns] + expected: FAIL + + [grid-template-columns.initial] + expected: FAIL + + [grid-template-columns.none] + expected: FAIL + + [grid-template-columns.<line-names>] + expected: FAIL + + [grid-template-columns.<track-size>.auto] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.<length>] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.<percentage>] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.<flex>] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.min-content] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.max-content] + expected: FAIL + + [grid-template-columns.<track-size>.<track-breadth>.minmax()] + expected: FAIL + + [grid-template-columns.reset] + expected: FAIL + + [grid-template-rows] + expected: FAIL + + [grid-template-rows.initial] + expected: FAIL + + [grid-template-rows.none] + expected: FAIL + + [grid-template-rows.<line-names>] + expected: FAIL + + [grid-template-rows.<track-size>.auto] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.<length>] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.<percentage>] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.<flex>] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.min-content] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.max-content] + expected: FAIL + + [grid-template-rows.<track-size>.<track-breadth>.minmax()] + expected: FAIL + + [grid-template-rows.reset] + expected: FAIL + + [grid-template-areas] + expected: FAIL + + [grid-template-areas.initial] + expected: FAIL + + [grid-template-areas.none] + expected: FAIL + + [grid-template-areas.<string>+] + expected: FAIL + + [grid-template-areas.reset] + expected: FAIL + + [grid-template] + expected: FAIL + + [grid-template.initial] + expected: FAIL + + [grid-template.none] + expected: FAIL + + [grid-template.<grid-template-rows> / <grid-template-columns>] + expected: FAIL + + [grid-template.<line-names>] + expected: FAIL + + [grid-template.<string>+] + expected: FAIL + + [grid-template.<string><track-size>+] + expected: FAIL + + [grid-template.reset] + expected: FAIL + + [grid-auto-columns] + expected: FAIL + + [grid-auto-columns.initial] + expected: FAIL + + [grid-auto-columns.<track-size>.auto] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.<length>] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.<percentage>] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.<flex>] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.min-content] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.max-content] + expected: FAIL + + [grid-auto-columns.<track-size>.<track-breadth>.minmax()] + expected: FAIL + + [grid-auto-columns.reset] + expected: FAIL + + [grid-auto-rows] + expected: FAIL + + [grid-auto-rows.initial] + expected: FAIL + + [grid-auto-rows.<track-size>.auto] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.<length>] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.<percentage>] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.<flex>] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.min-content] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.max-content] + expected: FAIL + + [grid-auto-rows.<track-size>.<track-breadth>.minmax()] + expected: FAIL + + [grid-auto-rows.reset] + expected: FAIL + + [grid-auto-flow] + expected: FAIL + + [grid-auto-flow.initial] + expected: FAIL + + [grid-auto-flow.row] + expected: FAIL + + [grid-auto-flow.column] + expected: FAIL + + [grid-auto-flow.dense] + expected: FAIL + + [grid-auto-flow.row dense] + expected: FAIL + + [grid-auto-flow.column dense] + expected: FAIL + + [grid-auto-flow.reset] + expected: FAIL + + [grid-row-start] + expected: FAIL + + [grid-row-start.initial] + expected: FAIL + + [grid-row-start.auto] + expected: FAIL + + [grid-row-start.<custom-ident>] + expected: FAIL + + [grid-row-start.<integer>] + expected: FAIL + + [grid-row-start.<integer> <ident>] + expected: FAIL + + [grid-row-start.span <integer>] + expected: FAIL + + [grid-row-start.span <custom-ident>] + expected: FAIL + + [grid-row-start.span <integer> <custom-ident>] + expected: FAIL + + [grid-row-start.reset] + expected: FAIL + + [grid-column-start] + expected: FAIL + + [grid-column-start.initial] + expected: FAIL + + [grid-column-start.auto] + expected: FAIL + + [grid-column-start.<custom-ident>] + expected: FAIL + + [grid-column-start.<integer>] + expected: FAIL + + [grid-column-start.<integer> <ident>] + expected: FAIL + + [grid-column-start.span <integer>] + expected: FAIL + + [grid-column-start.span <custom-ident>] + expected: FAIL + + [grid-column-start.span <integer> <custom-ident>] + expected: FAIL + + [grid-column-start.reset] + expected: FAIL + + [grid-row-end] + expected: FAIL + + [grid-row-end.initial] + expected: FAIL + + [grid-row-end.auto] + expected: FAIL + + [grid-row-end.<custom-ident>] + expected: FAIL + + [grid-row-end.<integer>] + expected: FAIL + + [grid-row-end.<integer> <ident>] + expected: FAIL + + [grid-row-end.span <integer>] + expected: FAIL + + [grid-row-end.span <custom-ident>] + expected: FAIL + + [grid-row-end.span <integer> <custom-ident>] + expected: FAIL + + [grid-row-end.reset] + expected: FAIL + + [grid-column-end] + expected: FAIL + + [grid-column-end.initial] + expected: FAIL + + [grid-column-end.auto] + expected: FAIL + + [grid-column-end.<custom-ident>] + expected: FAIL + + [grid-column-end.<integer>] + expected: FAIL + + [grid-column-end.<integer> <ident>] + expected: FAIL + + [grid-column-end.span <integer>] + expected: FAIL + + [grid-column-end.span <custom-ident>] + expected: FAIL + + [grid-column-end.span <integer> <custom-ident>] + expected: FAIL + + [grid-column-end.reset] + expected: FAIL + + [grid-column] + expected: FAIL + + [grid-column.initial] + expected: FAIL + + [grid-column.auto] + expected: FAIL + + [grid-column.<custom-ident>] + expected: FAIL + + [grid-column.<integer> start] + expected: FAIL + + [grid-column.<integer>] + expected: FAIL + + [grid-column.<integer> <ident>] + expected: FAIL + + [grid-column.span <integer>] + expected: FAIL + + [grid-column.span <custom-ident>] + expected: FAIL + + [grid-column.span <integer> <custom-ident>] + expected: FAIL + + [grid-column.reset] + expected: FAIL + + [grid-row] + expected: FAIL + + [grid-row.initial] + expected: FAIL + + [grid-row.auto] + expected: FAIL + + [grid-row.<custom-ident>] + expected: FAIL + + [grid-row.<integer> start] + expected: FAIL + + [grid-row.<integer>] + expected: FAIL + + [grid-row.<integer> <ident>] + expected: FAIL + + [grid-row.span <integer>] + expected: FAIL + + [grid-row.span <custom-ident>] + expected: FAIL + + [grid-row.span <integer> <custom-ident>] + expected: FAIL + + [grid-row.reset] + expected: FAIL + + [grid-area] + expected: FAIL + + [grid-area.initial] + expected: FAIL + + [grid-area.auto] + expected: FAIL + + [grid-area.<custom-ident>] + expected: FAIL + + [grid-area.<integer> start] + expected: FAIL + + [grid-area.<integer>] + expected: FAIL + + [grid-area.<integer> <ident>] + expected: FAIL + + [grid-area.span <integer>] + expected: FAIL + + [grid-area.span <custom-ident>] + expected: FAIL + + [grid-area.span <integer> <custom-ident>] + expected: FAIL + + [grid-area.reset] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/compute-intrinsic-widths-scrollbar-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/compute-intrinsic-widths-scrollbar-001.html.ini new file mode 100644 index 00000000000..87eb0d44f90 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/compute-intrinsic-widths-scrollbar-001.html.ini @@ -0,0 +1,6 @@ +[compute-intrinsic-widths-scrollbar-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-grid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-grid.html.ini new file mode 100644 index 00000000000..5ca965e132c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-grid.html.ini @@ -0,0 +1,2 @@ +[display-grid.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-inline-grid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-inline-grid.html.ini new file mode 100644 index 00000000000..fbcdadc5696 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/display-inline-grid.html.ini @@ -0,0 +1,2 @@ +[display-inline-grid.html] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.js.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-box-sizing-001.html.ini index 958c1fb9bea..7f1fc8f5a91 100644 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.js.ini +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-box-sizing-001.html.ini @@ -1,78 +1,72 @@ -[2d.composite.grid.filter.shadow.fillRect.worker.html] - [2d] +[grid-box-sizing-001.html] + [.grid 1] expected: FAIL - [2d 1] + [.grid 2] expected: FAIL - [2d 2] + [.grid 3] expected: FAIL - [2d 3] + [.grid 4] expected: FAIL - [2d 4] + [.grid 5] expected: FAIL - [2d 5] + [.grid 6] expected: FAIL - [2d 6] + [.grid 7] expected: FAIL - [2d 7] + [.grid 8] expected: FAIL - [2d 8] + [.grid 9] expected: FAIL - [2d 9] + [.grid 10] expected: FAIL - [2d 10] + [.grid 11] expected: FAIL - [2d 11] + [.grid 12] expected: FAIL - [2d 12] + [.grid 13] expected: FAIL - [2d 13] + [.grid 14] expected: FAIL - [2d 14] + [.grid 15] expected: FAIL - [2d 15] + [.grid 16] expected: FAIL - [2d 16] + [.grid 17] expected: FAIL - [2d 17] + [.grid 18] expected: FAIL - [2d 18] + [.grid 19] expected: FAIL - [2d 19] + [.grid 20] expected: FAIL - [2d 20] + [.grid 21] expected: FAIL - [2d 21] + [.grid 22] expected: FAIL - [2d 22] + [.grid 23] expected: FAIL - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] + [.grid 24] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-button-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-button-001.html.ini new file mode 100644 index 00000000000..5d1f6c12f76 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-button-001.html.ini @@ -0,0 +1,6 @@ +[grid-button-001.html] + [[data-expected-width\] 1] + expected: FAIL + + [[data-expected-width\] 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-margin-border-padding-scrollbar-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-margin-border-padding-scrollbar-001.html.ini new file mode 100644 index 00000000000..7e1d0e0bfae --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-margin-border-padding-scrollbar-001.html.ini @@ -0,0 +1,48 @@ +[grid-container-margin-border-padding-scrollbar-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-001.html.ini new file mode 100644 index 00000000000..01d9498d63e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-001.html.ini @@ -0,0 +1,2 @@ +[grid-container-scrollbar-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html.ini new file mode 100644 index 00000000000..02bab1ab17f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html.ini @@ -0,0 +1,2 @@ +[grid-container-scrollbar-vertical-lr-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html.ini new file mode 100644 index 00000000000..b873019dd02 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html.ini @@ -0,0 +1,2 @@ +[grid-container-scrollbar-vertical-rl-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbars-sizing-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbars-sizing-002.html.ini new file mode 100644 index 00000000000..65f447695c9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-scrollbars-sizing-002.html.ini @@ -0,0 +1,2 @@ +[grid-container-scrollbars-sizing-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-sizing-constraints-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-sizing-constraints-001.html.ini new file mode 100644 index 00000000000..2c285a92a5b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-container-sizing-constraints-001.html.ini @@ -0,0 +1,45 @@ +[grid-container-sizing-constraints-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-grid-001.html.ini new file mode 100644 index 00000000000..ed6ec496501 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-grid-001.html.ini @@ -0,0 +1,2 @@ +[grid-display-grid-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-inline-grid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-inline-grid-001.html.ini new file mode 100644 index 00000000000..788df95eebc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-display-inline-grid-001.html.ini @@ -0,0 +1,2 @@ +[grid-display-inline-grid-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-float-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-float-002.html.ini new file mode 100644 index 00000000000..665d2d54938 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-float-002.html.ini @@ -0,0 +1,3 @@ +[grid-float-002.html] + [.container 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-001.html.ini new file mode 100644 index 00000000000..bf75afbdee0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-001.html.ini @@ -0,0 +1,2 @@ +[grid-floats-no-intrude-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-002.html.ini new file mode 100644 index 00000000000..d5f69932c21 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-floats-no-intrude-002.html.ini @@ -0,0 +1,2 @@ +[grid-floats-no-intrude-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-flex-content-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-flex-content-001.html.ini new file mode 100644 index 00000000000..6ba87481cde --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-flex-content-001.html.ini @@ -0,0 +1,24 @@ +[grid-gutters-and-flex-content-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-tracks-001.html.ini new file mode 100644 index 00000000000..129b20ed2ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-and-tracks-001.html.ini @@ -0,0 +1,51 @@ +[grid-gutters-and-tracks-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-as-percentage-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-as-percentage-001.html.ini new file mode 100644 index 00000000000..07aacd6059c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-gutters-as-percentage-001.html.ini @@ -0,0 +1,48 @@ +[grid-gutters-as-percentage-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-floats-no-intrude-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-floats-no-intrude-001.html.ini new file mode 100644 index 00000000000..de624aacf44 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-floats-no-intrude-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-floats-no-intrude-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-margins-no-collapse-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-margins-no-collapse-001.html.ini new file mode 100644 index 00000000000..0bc470fac77 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-inline-margins-no-collapse-001.html.ini @@ -0,0 +1,2 @@ +[grid-inline-margins-no-collapse-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-letter-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-letter-001.html.ini new file mode 100644 index 00000000000..116bf6ed4fe --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-letter-001.html.ini @@ -0,0 +1,6 @@ +[grid-item-accepts-first-letter-001.html] + [.grid,.inline-grid 1] + expected: FAIL + + [.grid,.inline-grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-line-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-line-001.html.ini new file mode 100644 index 00000000000..7238cbdfc01 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-accepts-first-line-001.html.ini @@ -0,0 +1,6 @@ +[grid-item-accepts-first-line-001.html] + [.grid,.inline-grid 1] + expected: FAIL + + [.grid,.inline-grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-hit-test.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-hit-test.html.ini new file mode 100644 index 00000000000..2c02e66e5a2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-item-hit-test.html.ini @@ -0,0 +1,3 @@ +[grid-item-hit-test.html] + [grid-item-hit-test] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-001.html.ini new file mode 100644 index 00000000000..e679221faca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-001.html.ini @@ -0,0 +1,2 @@ +[grid-margins-no-collapse-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-002.html.ini new file mode 100644 index 00000000000..547383e95b8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-margins-no-collapse-002.html.ini @@ -0,0 +1,2 @@ +[grid-margins-no-collapse-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-min-max-height-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-min-max-height-001.html.ini new file mode 100644 index 00000000000..9922b9e77a7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-min-max-height-001.html.ini @@ -0,0 +1,6 @@ +[grid-min-max-height-001.html] + [.grid 2] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-size-shrink-to-fit-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-size-shrink-to-fit-001.html.ini new file mode 100644 index 00000000000..67233e4812d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-size-shrink-to-fit-001.html.ini @@ -0,0 +1,12 @@ +[grid-size-shrink-to-fit-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-support-display-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-support-display-001.html.ini new file mode 100644 index 00000000000..9e5e6dbfd1d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-model/grid-support-display-001.html.ini @@ -0,0 +1,18 @@ +[grid-support-display-001.html] + [Test style display 'grid'] + expected: FAIL + + [Test style display 'inline-grid'] + expected: FAIL + + [Test CSS display 'grid'] + expected: FAIL + + [Test CSS display 'inline-grid'] + expected: FAIL + + [Test JavaScript display 'grid'] + expected: FAIL + + [Test JavaScript display 'inline-grid'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-fractional-fr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-fractional-fr.html.ini new file mode 100644 index 00000000000..a9c61b6bd1e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-fractional-fr.html.ini @@ -0,0 +1,3 @@ +[grid-tracks-fractional-fr.html] + [Tests fractional fr-units which should multiply to whole numbers.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-stretched-with-different-flex-factors-sum.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-stretched-with-different-flex-factors-sum.html.ini new file mode 100644 index 00000000000..d8fc97024c0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-tracks-stretched-with-different-flex-factors-sum.html.ini @@ -0,0 +1,6 @@ +[grid-tracks-stretched-with-different-flex-factors-sum.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-aspect-ratio-uses-content-box-height-for-track-sizing.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-aspect-ratio-uses-content-box-height-for-track-sizing.html.ini new file mode 100644 index 00000000000..be001036d18 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-aspect-ratio-uses-content-box-height-for-track-sizing.html.ini @@ -0,0 +1,2 @@ +[grid-with-aspect-ratio-uses-content-box-height-for-track-sizing.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-dynamic-img.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-dynamic-img.html.ini new file mode 100644 index 00000000000..bd5f7c04c7c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-dynamic-img.html.ini @@ -0,0 +1,2 @@ +[grid-with-dynamic-img.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-orthogonal-child-within-flexbox.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-orthogonal-child-within-flexbox.html.ini new file mode 100644 index 00000000000..2a5641ef46d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-with-orthogonal-child-within-flexbox.html.ini @@ -0,0 +1,2 @@ +[grid-with-orthogonal-child-within-flexbox.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-definite-change.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-definite-change.html.ini new file mode 100644 index 00000000000..16a6aa12262 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-definite-change.html.ini @@ -0,0 +1,2 @@ +[grid-within-flexbox-definite-change.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-indefinite.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-indefinite.html.ini new file mode 100644 index 00000000000..de8dbad9c0d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/grid-within-flexbox-indefinite.html.ini @@ -0,0 +1,2 @@ +[grid-within-flexbox-indefinite.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-001.html.ini new file mode 100644 index 00000000000..fe71193b1a8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-001.html.ini @@ -0,0 +1,2 @@ +[grid-support-grid-auto-columns-rows-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-002.html.ini new file mode 100644 index 00000000000..471709d5fa3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-002.html.ini @@ -0,0 +1,2 @@ +[grid-support-grid-auto-columns-rows-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-003.html.ini new file mode 100644 index 00000000000..bee2c618937 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/implicit-grids/grid-support-grid-auto-columns-rows-003.html.ini @@ -0,0 +1,2 @@ +[grid-support-grid-auto-columns-rows-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/inheritance.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/inheritance.html.ini new file mode 100644 index 00000000000..4929af8ef09 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/inheritance.html.ini @@ -0,0 +1,60 @@ +[inheritance.html] + [Property grid-auto-columns has initial value auto] + expected: FAIL + + [Property grid-auto-columns does not inherit] + expected: FAIL + + [Property grid-auto-flow has initial value row] + expected: FAIL + + [Property grid-auto-flow does not inherit] + expected: FAIL + + [Property grid-auto-rows has initial value auto] + expected: FAIL + + [Property grid-auto-rows does not inherit] + expected: FAIL + + [Property grid-column-end has initial value auto] + expected: FAIL + + [Property grid-column-end does not inherit] + expected: FAIL + + [Property grid-column-start has initial value auto] + expected: FAIL + + [Property grid-column-start does not inherit] + expected: FAIL + + [Property grid-row-end has initial value auto] + expected: FAIL + + [Property grid-row-end does not inherit] + expected: FAIL + + [Property grid-row-start has initial value auto] + expected: FAIL + + [Property grid-row-start does not inherit] + expected: FAIL + + [Property grid-template-areas has initial value none] + expected: FAIL + + [Property grid-template-areas does not inherit] + expected: FAIL + + [Property grid-template-columns has initial value none] + expected: FAIL + + [Property grid-template-columns does not inherit] + expected: FAIL + + [Property grid-template-rows has initial value none] + expected: FAIL + + [Property grid-template-rows does not inherit] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-001.html.ini new file mode 100644 index 00000000000..1f566e37a3d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-001.html.ini @@ -0,0 +1,144 @@ +[baseline-alignment-affects-intrinsic-size-001.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid3-auto-auto 3] + expected: FAIL + + [#grid4-auto-auto 4] + expected: FAIL + + [#grid1-auto-min-content 5] + expected: FAIL + + [#grid2-auto-min-content 6] + expected: FAIL + + [#grid3-auto-min-content 7] + expected: FAIL + + [#grid4-auto-min-content 8] + expected: FAIL + + [#grid1-auto-max-content 9] + expected: FAIL + + [#grid2-auto-max-content 10] + expected: FAIL + + [#grid3-auto-max-content 11] + expected: FAIL + + [#grid4-auto-max-content 12] + expected: FAIL + + [#grid1-min-content-auto 13] + expected: FAIL + + [#grid2-min-content-auto 14] + expected: FAIL + + [#grid3-min-content-auto 15] + expected: FAIL + + [#grid4-min-content-auto 16] + expected: FAIL + + [#grid1-min-content-min-content 17] + expected: FAIL + + [#grid2-min-content-min-content 18] + expected: FAIL + + [#grid3-min-content-min-content 19] + expected: FAIL + + [#grid4-min-content-min-content 20] + expected: FAIL + + [#grid1-min-content-max-content 21] + expected: FAIL + + [#grid2-min-content-max-content 22] + expected: FAIL + + [#grid3-min-content-max-content 23] + expected: FAIL + + [#grid4-min-content-max-content 24] + expected: FAIL + + [#grid1-max-content-auto 25] + expected: FAIL + + [#grid2-max-content-auto 26] + expected: FAIL + + [#grid3-max-content-auto 27] + expected: FAIL + + [#grid4-max-content-auto 28] + expected: FAIL + + [#grid1-max-content-min-content 29] + expected: FAIL + + [#grid2-max-content-min-content 30] + expected: FAIL + + [#grid3-max-content-min-content 31] + expected: FAIL + + [#grid4-max-content-min-content 32] + expected: FAIL + + [#grid1-max-content-max-content 33] + expected: FAIL + + [#grid2-max-content-max-content 34] + expected: FAIL + + [#grid3-max-content-max-content 35] + expected: FAIL + + [#grid4-max-content-max-content 36] + expected: FAIL + + [#grid1-0px-auto 37] + expected: FAIL + + [#grid2-0px-auto 38] + expected: FAIL + + [#grid3-0px-auto 39] + expected: FAIL + + [#grid4-0px-auto 40] + expected: FAIL + + [#grid1-0px-min-content 41] + expected: FAIL + + [#grid2-0px-min-content 42] + expected: FAIL + + [#grid3-0px-min-content 43] + expected: FAIL + + [#grid4-0px-min-content 44] + expected: FAIL + + [#grid1-0px-max-content 45] + expected: FAIL + + [#grid2-0px-max-content 46] + expected: FAIL + + [#grid3-0px-max-content 47] + expected: FAIL + + [#grid4-0px-max-content 48] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-002.html.ini new file mode 100644 index 00000000000..128551a288d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-002.html.ini @@ -0,0 +1,144 @@ +[baseline-alignment-affects-intrinsic-size-002.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid3-auto-auto 3] + expected: FAIL + + [#grid4-auto-auto 4] + expected: FAIL + + [#grid1-auto-min-content 5] + expected: FAIL + + [#grid2-auto-min-content 6] + expected: FAIL + + [#grid3-auto-min-content 7] + expected: FAIL + + [#grid4-auto-min-content 8] + expected: FAIL + + [#grid1-auto-max-content 9] + expected: FAIL + + [#grid2-auto-max-content 10] + expected: FAIL + + [#grid3-auto-max-content 11] + expected: FAIL + + [#grid4-auto-max-content 12] + expected: FAIL + + [#grid1-min-content-auto 13] + expected: FAIL + + [#grid2-min-content-auto 14] + expected: FAIL + + [#grid3-min-content-auto 15] + expected: FAIL + + [#grid4-min-content-auto 16] + expected: FAIL + + [#grid1-min-content-min-content 17] + expected: FAIL + + [#grid2-min-content-min-content 18] + expected: FAIL + + [#grid3-min-content-min-content 19] + expected: FAIL + + [#grid4-min-content-min-content 20] + expected: FAIL + + [#grid1-min-content-max-content 21] + expected: FAIL + + [#grid2-min-content-max-content 22] + expected: FAIL + + [#grid3-min-content-max-content 23] + expected: FAIL + + [#grid4-min-content-max-content 24] + expected: FAIL + + [#grid1-max-content-auto 25] + expected: FAIL + + [#grid2-max-content-auto 26] + expected: FAIL + + [#grid3-max-content-auto 27] + expected: FAIL + + [#grid4-max-content-auto 28] + expected: FAIL + + [#grid1-max-content-min-content 29] + expected: FAIL + + [#grid2-max-content-min-content 30] + expected: FAIL + + [#grid3-max-content-min-content 31] + expected: FAIL + + [#grid4-max-content-min-content 32] + expected: FAIL + + [#grid1-max-content-max-content 33] + expected: FAIL + + [#grid2-max-content-max-content 34] + expected: FAIL + + [#grid3-max-content-max-content 35] + expected: FAIL + + [#grid4-max-content-max-content 36] + expected: FAIL + + [#grid1-0px-auto 37] + expected: FAIL + + [#grid2-0px-auto 38] + expected: FAIL + + [#grid3-0px-auto 39] + expected: FAIL + + [#grid4-0px-auto 40] + expected: FAIL + + [#grid1-0px-min-content 41] + expected: FAIL + + [#grid2-0px-min-content 42] + expected: FAIL + + [#grid3-0px-min-content 43] + expected: FAIL + + [#grid4-0px-min-content 44] + expected: FAIL + + [#grid1-0px-max-content 45] + expected: FAIL + + [#grid2-0px-max-content 46] + expected: FAIL + + [#grid3-0px-max-content 47] + expected: FAIL + + [#grid4-0px-max-content 48] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-003.html.ini new file mode 100644 index 00000000000..25434de386c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-003.html.ini @@ -0,0 +1,72 @@ +[baseline-alignment-affects-intrinsic-size-003.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid1-auto-min-content 3] + expected: FAIL + + [#grid2-auto-min-content 4] + expected: FAIL + + [#grid1-auto-max-content 5] + expected: FAIL + + [#grid2-auto-max-content 6] + expected: FAIL + + [#grid1-min-content-auto 7] + expected: FAIL + + [#grid2-min-content-auto 8] + expected: FAIL + + [#grid1-min-content-min-content 9] + expected: FAIL + + [#grid2-min-content-min-content 10] + expected: FAIL + + [#grid1-min-content-max-content 11] + expected: FAIL + + [#grid2-min-content-max-content 12] + expected: FAIL + + [#grid1-max-content-auto 13] + expected: FAIL + + [#grid2-max-content-auto 14] + expected: FAIL + + [#grid1-max-content-min-content 15] + expected: FAIL + + [#grid2-max-content-min-content 16] + expected: FAIL + + [#grid1-max-content-max-content 17] + expected: FAIL + + [#grid2-max-content-max-content 18] + expected: FAIL + + [#grid1-0px-auto 19] + expected: FAIL + + [#grid2-0px-auto 20] + expected: FAIL + + [#grid1-0px-min-content 21] + expected: FAIL + + [#grid2-0px-min-content 22] + expected: FAIL + + [#grid1-0px-max-content 23] + expected: FAIL + + [#grid2-0px-max-content 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-004.html.ini new file mode 100644 index 00000000000..6bb706ae1be --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-004.html.ini @@ -0,0 +1,72 @@ +[baseline-alignment-affects-intrinsic-size-004.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid1-auto-min-content 3] + expected: FAIL + + [#grid2-auto-min-content 4] + expected: FAIL + + [#grid1-auto-max-content 5] + expected: FAIL + + [#grid2-auto-max-content 6] + expected: FAIL + + [#grid1-min-content-auto 7] + expected: FAIL + + [#grid2-min-content-auto 8] + expected: FAIL + + [#grid1-min-content-min-content 9] + expected: FAIL + + [#grid2-min-content-min-content 10] + expected: FAIL + + [#grid1-min-content-max-content 11] + expected: FAIL + + [#grid2-min-content-max-content 12] + expected: FAIL + + [#grid1-max-content-auto 13] + expected: FAIL + + [#grid2-max-content-auto 14] + expected: FAIL + + [#grid1-max-content-min-content 15] + expected: FAIL + + [#grid2-max-content-min-content 16] + expected: FAIL + + [#grid1-max-content-max-content 17] + expected: FAIL + + [#grid2-max-content-max-content 18] + expected: FAIL + + [#grid1-0px-auto 19] + expected: FAIL + + [#grid2-0px-auto 20] + expected: FAIL + + [#grid1-0px-min-content 21] + expected: FAIL + + [#grid2-0px-min-content 22] + expected: FAIL + + [#grid1-0px-max-content 23] + expected: FAIL + + [#grid2-0px-max-content 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-005.html.ini new file mode 100644 index 00000000000..4557521639e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-005.html.ini @@ -0,0 +1,72 @@ +[baseline-alignment-affects-intrinsic-size-005.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid1-auto-min-content 3] + expected: FAIL + + [#grid2-auto-min-content 4] + expected: FAIL + + [#grid1-auto-max-content 5] + expected: FAIL + + [#grid2-auto-max-content 6] + expected: FAIL + + [#grid1-min-content-auto 7] + expected: FAIL + + [#grid2-min-content-auto 8] + expected: FAIL + + [#grid1-min-content-min-content 9] + expected: FAIL + + [#grid2-min-content-min-content 10] + expected: FAIL + + [#grid1-min-content-max-content 11] + expected: FAIL + + [#grid2-min-content-max-content 12] + expected: FAIL + + [#grid1-max-content-auto 13] + expected: FAIL + + [#grid2-max-content-auto 14] + expected: FAIL + + [#grid1-max-content-min-content 15] + expected: FAIL + + [#grid2-max-content-min-content 16] + expected: FAIL + + [#grid1-max-content-max-content 17] + expected: FAIL + + [#grid2-max-content-max-content 18] + expected: FAIL + + [#grid1-0px-auto 19] + expected: FAIL + + [#grid2-0px-auto 20] + expected: FAIL + + [#grid1-0px-min-content 21] + expected: FAIL + + [#grid2-0px-min-content 22] + expected: FAIL + + [#grid1-0px-max-content 23] + expected: FAIL + + [#grid2-0px-max-content 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-006.html.ini new file mode 100644 index 00000000000..d49d72d8c35 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/baseline-alignment-affects-intrinsic-size-006.html.ini @@ -0,0 +1,72 @@ +[baseline-alignment-affects-intrinsic-size-006.html] + [#grid1-auto-auto 1] + expected: FAIL + + [#grid2-auto-auto 2] + expected: FAIL + + [#grid1-auto-min-content 3] + expected: FAIL + + [#grid2-auto-min-content 4] + expected: FAIL + + [#grid1-auto-max-content 5] + expected: FAIL + + [#grid2-auto-max-content 6] + expected: FAIL + + [#grid1-min-content-auto 7] + expected: FAIL + + [#grid2-min-content-auto 8] + expected: FAIL + + [#grid1-min-content-min-content 9] + expected: FAIL + + [#grid2-min-content-min-content 10] + expected: FAIL + + [#grid1-min-content-max-content 11] + expected: FAIL + + [#grid2-min-content-max-content 12] + expected: FAIL + + [#grid1-max-content-auto 13] + expected: FAIL + + [#grid2-max-content-auto 14] + expected: FAIL + + [#grid1-max-content-min-content 15] + expected: FAIL + + [#grid2-max-content-min-content 16] + expected: FAIL + + [#grid1-max-content-max-content 17] + expected: FAIL + + [#grid2-max-content-max-content 18] + expected: FAIL + + [#grid1-0px-auto 19] + expected: FAIL + + [#grid2-0px-auto 20] + expected: FAIL + + [#grid1-0px-min-content 21] + expected: FAIL + + [#grid2-0px-min-content 22] + expected: FAIL + + [#grid1-0px-max-content 23] + expected: FAIL + + [#grid2-0px-max-content 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-001.html.ini new file mode 100644 index 00000000000..1803657031c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-001.html.ini @@ -0,0 +1,21 @@ +[flex-and-intrinsic-sizes-001.html] + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-002.html.ini new file mode 100644 index 00000000000..9ea03631ebf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-and-intrinsic-sizes-002.html.ini @@ -0,0 +1,2 @@ +[flex-and-intrinsic-sizes-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-columns-min-max-width-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-columns-min-max-width-001.html.ini new file mode 100644 index 00000000000..85dd7ca14b8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-columns-min-max-width-001.html.ini @@ -0,0 +1,36 @@ +[flex-sizing-columns-min-max-width-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-indefinite-height.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-indefinite-height.html.ini new file mode 100644 index 00000000000..f60d85c2234 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-indefinite-height.html.ini @@ -0,0 +1,2 @@ +[flex-sizing-rows-indefinite-height.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-min-max-height-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-min-max-height-001.html.ini new file mode 100644 index 00000000000..464114f1070 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-sizing-rows-min-max-height-001.html.ini @@ -0,0 +1,36 @@ +[flex-sizing-rows-min-max-height-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-tracks-with-fractional-size.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-tracks-with-fractional-size.html.ini new file mode 100644 index 00000000000..20b3dd531e5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/flex-tracks-with-fractional-size.html.ini @@ -0,0 +1,2 @@ +[flex-tracks-with-fractional-size.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-001.html.ini new file mode 100644 index 00000000000..f36383ab789 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-001.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-002.html.ini new file mode 100644 index 00000000000..01e19347ff9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-002.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-003.html.ini new file mode 100644 index 00000000000..f5ef6b7191c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-003.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-004.html.ini new file mode 100644 index 00000000000..2acccff409d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-004.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-005.html.ini new file mode 100644 index 00000000000..c91429d8133 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-005.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-006.html.ini new file mode 100644 index 00000000000..3339eee25ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-006.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-007.html.ini new file mode 100644 index 00000000000..12a326d9678 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-007.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-008.html.ini new file mode 100644 index 00000000000..df8aa5e738c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-as-flex-item-should-not-shrink-to-fit-008.html.ini @@ -0,0 +1,2 @@ +[grid-as-flex-item-should-not-shrink-to-fit-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-automatic-minimum-for-auto-columns-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-automatic-minimum-for-auto-columns-001.html.ini new file mode 100644 index 00000000000..841d24fde34 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-automatic-minimum-for-auto-columns-001.html.ini @@ -0,0 +1,12 @@ +[grid-automatic-minimum-for-auto-columns-001.html] + [Check that min-width is honored when sizing auto columns.] + expected: FAIL + + [Check that min-width is honored when sizing auto columns and spanning grid items.] + expected: FAIL + + [Check the interactions between width and min-width and auto tracks.] + expected: FAIL + + [Check that borders and paddings are considering when computing min sizes.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-001.html.ini new file mode 100644 index 00000000000..f2e92e24cad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-001.html.ini @@ -0,0 +1,54 @@ +[grid-container-percentage-001.html] + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-002.html.ini new file mode 100644 index 00000000000..86c1903e253 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-container-percentage-002.html.ini @@ -0,0 +1,69 @@ +[grid-container-percentage-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL + + [.grid 17] + expected: FAIL + + [.grid 18] + expected: FAIL + + [.grid 19] + expected: FAIL + + [.grid 20] + expected: FAIL + + [.grid 21] + expected: FAIL + + [.grid 22] + expected: FAIL + + [.grid 23] + expected: FAIL + + [.grid 24] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html.ini new file mode 100644 index 00000000000..9564f061c1e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html.ini @@ -0,0 +1,3 @@ +[grid-content-distribution-must-account-for-track-sizing-002.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html.ini new file mode 100644 index 00000000000..4de8176e90b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html.ini @@ -0,0 +1,3 @@ +[grid-content-distribution-must-account-for-track-sizing-003.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html.ini new file mode 100644 index 00000000000..2f618c421db --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html.ini @@ -0,0 +1,3 @@ +[grid-content-distribution-must-account-for-track-sizing-004.html] + [.grid 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html.ini new file mode 100644 index 00000000000..14d46278447 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html.ini @@ -0,0 +1,48 @@ +[grid-find-fr-size-gutters-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL + + [.grid 13] + expected: FAIL + + [.grid 14] + expected: FAIL + + [.grid 15] + expected: FAIL + + [.grid 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html.ini new file mode 100644 index 00000000000..623c5855cd6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html.ini @@ -0,0 +1,18 @@ +[grid-find-fr-size-gutters-002.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-restart-algorithm.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-restart-algorithm.html.ini new file mode 100644 index 00000000000..b454160557b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-find-fr-size-restart-algorithm.html.ini @@ -0,0 +1,2 @@ +[grid-find-fr-size-restart-algorithm.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini new file mode 100644 index 00000000000..c6e3c070ff9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini @@ -0,0 +1,60 @@ +[grid-fit-content-percentage.html] + [fit-content(0%); min-width: 0px] + expected: FAIL + + [fit-content(50%); min-width: 0px] + expected: FAIL + + [fit-content(75%); min-width: 0px] + expected: FAIL + + [fit-content(100%); min-width: 0px] + expected: FAIL + + [fit-content(150%); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 0%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 50%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 75%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 100%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 150%)); min-width: 0px] + expected: FAIL + + [fit-content(0%); min-width: auto] + expected: FAIL + + [fit-content(50%); min-width: auto] + expected: FAIL + + [fit-content(75%); min-width: auto] + expected: FAIL + + [fit-content(100%); min-width: auto] + expected: FAIL + + [fit-content(150%); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 0%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 50%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 75%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 100%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 150%)); min-width: auto] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-001.html.ini new file mode 100644 index 00000000000..793ac284517 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-001.html.ini @@ -0,0 +1,90 @@ +[grid-flex-track-intrinsic-sizes-001.html] + ['grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(30px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(30px, 1fr) minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);] + expected: FAIL + + ['grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-002.html.ini new file mode 100644 index 00000000000..1518f246042 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-002.html.ini @@ -0,0 +1,15 @@ +[grid-flex-track-intrinsic-sizes-002.html] + ['grid' with: grid-template-columns: 1fr auto auto auto; and grid-template-rows: 1fr auto auto auto;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, 1fr) auto auto auto; and grid-template-rows: minmax(0, 1fr) auto auto auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr 1fr 1fr; and grid-template-rows: 1fr 1fr 1fr 1fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr 1fr 4fr; and grid-template-rows: 1fr 1fr 1fr 4fr;] + expected: FAIL + + ['grid' with: grid-template-columns: 1fr 1fr 1fr; and grid-template-rows: 1fr 1fr 1fr;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-003.html.ini new file mode 100644 index 00000000000..82bb050a252 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-flex-track-intrinsic-sizes-003.html.ini @@ -0,0 +1,306 @@ +[grid-flex-track-intrinsic-sizes-003.html] + [auto min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;] + expected: FAIL + + [auto min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;] + expected: FAIL + + [min-content min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;] + expected: FAIL + + [50px min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-dynamic-block-size.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-dynamic-block-size.html.ini new file mode 100644 index 00000000000..5eb93e94106 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-dynamic-block-size.html.ini @@ -0,0 +1,2 @@ +[grid-intrinsic-size-dynamic-block-size.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html.ini new file mode 100644 index 00000000000..a1c9f935857 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html.ini @@ -0,0 +1,21 @@ +[grid-intrinsic-size-with-orthogonal-items.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html.ini new file mode 100644 index 00000000000..774b634befc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html.ini @@ -0,0 +1,93 @@ +[grid-intrinsic-track-sizes-001.html] + ['grid' with: grid-template-columns: auto; and grid-template-rows: auto;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content; and grid-template-rows: min-content;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content; and grid-template-rows: max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, auto); and grid-template-rows: minmax(0, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, min-content); and grid-template-rows: minmax(0, min-content);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, max-content); and grid-template-rows: minmax(0, max-content);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(auto, 10px); and grid-template-rows: minmax(auto, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(min-content, 10px); and grid-template-rows: minmax(min-content, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(max-content, 10px); and grid-template-rows: minmax(max-content, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: auto auto; and grid-template-rows: auto auto;] + expected: FAIL + + ['grid' with: grid-template-columns: min-content min-content; and grid-template-rows: min-content min-content;] + expected: FAIL + + ['grid' with: grid-template-columns: max-content max-content; and grid-template-rows: max-content max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, auto) minmax(0, auto); and grid-template-rows: minmax(0, auto) minmax(0, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, min-content) minmax(0, min-content); and grid-template-rows: minmax(0, min-content) minmax(0, min-content);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(0, max-content) minmax(0, max-content); and grid-template-rows: minmax(0, max-content) minmax(0, max-content);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(auto, 4px) minmax(auto, 4px); and grid-template-rows: minmax(auto, 4px) minmax(auto, 4px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(auto, 10px) minmax(auto, 10px); and grid-template-rows: minmax(auto, 10px) minmax(auto, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(min-content, 10px) minmax(min-content, 10px); and grid-template-rows: minmax(min-content, 10px) minmax(min-content, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: minmax(max-content, 10px) minmax(max-content, 10px); and grid-template-rows: minmax(max-content, 10px) minmax(max-content, 10px);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px auto; and grid-template-rows: 20px auto;] + expected: FAIL + + ['grid' with: grid-template-columns: 20px min-content; and grid-template-rows: 20px min-content;] + expected: FAIL + + ['grid' with: grid-template-columns: 20px max-content; and grid-template-rows: 20px max-content;] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(0, auto); and grid-template-rows: 20px minmax(0, auto);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(0, min-content); and grid-template-rows: 20px minmax(0, min-content);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(0, max-content); and grid-template-rows: 20px minmax(0, max-content);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(auto, 30px); and grid-template-rows: 20px minmax(auto, 30px);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(min-content, 6px); and grid-template-rows: 20px minmax(min-content, 6px);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(min-content, 40px); and grid-template-rows: 20px minmax(min-content, 40px);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(max-content, 6px); and grid-template-rows: 20px minmax(max-content, 6px);] + expected: FAIL + + ['grid' with: grid-template-columns: 20px minmax(max-content, 30px); and grid-template-rows: 20px minmax(max-content, 30px);] + expected: FAIL + + ['grid' with: grid-template-columns: max-content min-content; and grid-template-rows: max-content min-content;] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-001.html.ini new file mode 100644 index 00000000000..c1da7487f09 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-001.html.ini @@ -0,0 +1,12 @@ +[grid-item-margin-auto-columns-rows-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-lr-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-lr-001.html.ini new file mode 100644 index 00000000000..80311ac8bcb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-lr-001.html.ini @@ -0,0 +1,12 @@ +[grid-item-margin-auto-columns-rows-vertical-lr-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-rl-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-rl-001.html.ini new file mode 100644 index 00000000000..f7cf2d3a8d9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-item-margin-auto-columns-rows-vertical-rl-001.html.ini @@ -0,0 +1,12 @@ +[grid-item-margin-auto-columns-rows-vertical-rl-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-layout-free-space-unit.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-layout-free-space-unit.html.ini new file mode 100644 index 00000000000..c76787069f7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-layout-free-space-unit.html.ini @@ -0,0 +1,2 @@ +[grid-layout-free-space-unit.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-lr.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-lr.html.ini new file mode 100644 index 00000000000..750ff0a5217 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-lr.html.ini @@ -0,0 +1,18 @@ +[grid-minimum-contribution-baseline-shim-vertical-lr.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-rl.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-rl.html.ini new file mode 100644 index 00000000000..589e172ed59 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-rl.html.ini @@ -0,0 +1,18 @@ +[grid-minimum-contribution-baseline-shim-vertical-rl.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim.html.ini new file mode 100644 index 00000000000..6d4606b6ee9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim.html.ini @@ -0,0 +1,18 @@ +[grid-minimum-contribution-baseline-shim.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001.html.ini new file mode 100644 index 00000000000..aa55293cecf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001.html.ini @@ -0,0 +1,2 @@ +[grid-stretch-respects-min-size-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-template-flexible-rerun-track-sizing.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-template-flexible-rerun-track-sizing.html.ini new file mode 100644 index 00000000000..f19d99ad3b3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/layout-algorithm/grid-template-flexible-rerun-track-sizing.html.ini @@ -0,0 +1,2 @@ +[grid-template-flexible-rerun-track-sizing.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/baseline/masonry-grid-item-content-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/baseline/masonry-grid-item-content-baseline-001.html.ini new file mode 100644 index 00000000000..7078073a7df --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/baseline/masonry-grid-item-content-baseline-001.html.ini @@ -0,0 +1,2 @@ +[masonry-grid-item-content-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html.ini new file mode 100644 index 00000000000..9e49213d4bc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-001.html.ini @@ -0,0 +1,2 @@ +[masonry-fragmentation-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html.ini new file mode 100644 index 00000000000..7747720553d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/fragmentation/masonry-fragmentation-002.html.ini @@ -0,0 +1,2 @@ +[masonry-fragmentation-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html.ini new file mode 100644 index 00000000000..6ebf12a9d25 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-001.html.ini @@ -0,0 +1,2 @@ +[masonry-grid-placement-named-lines-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html.ini new file mode 100644 index 00000000000..3883a104e47 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/grid-placement/masonry-grid-placement-named-lines-002.html.ini @@ -0,0 +1,2 @@ +[masonry-grid-placement-named-lines-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-001.html.ini new file mode 100644 index 00000000000..012289f6a7e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-001.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-cols-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-002.html.ini new file mode 100644 index 00000000000..940420a5436 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-002.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-cols-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-003.html.ini new file mode 100644 index 00000000000..ac7d8f7f360 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-003.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-cols-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-004.html.ini new file mode 100644 index 00000000000..708663e0a3a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-004.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-cols-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-005.html.ini new file mode 100644 index 00000000000..781501edeb9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-cols-005.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-cols-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-001.html.ini new file mode 100644 index 00000000000..c3653e71b26 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-001.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-rows-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-002.html.ini new file mode 100644 index 00000000000..a7fcdc1be58 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-002.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-rows-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-003.html.ini new file mode 100644 index 00000000000..240ecc4895e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-003.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-rows-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-004.html.ini new file mode 100644 index 00000000000..6c1d6c94a10 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/intrinsic-sizing/masonry-intrinsic-sizing-rows-004.html.ini @@ -0,0 +1,2 @@ +[masonry-intrinsic-sizing-rows-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html.ini new file mode 100644 index 00000000000..c7b67627fb1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-001.html.ini @@ -0,0 +1,2 @@ +[masonry-item-placement-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html.ini new file mode 100644 index 00000000000..cdbc3f3a729 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-002.html.ini @@ -0,0 +1,2 @@ +[masonry-item-placement-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html.ini new file mode 100644 index 00000000000..43f04ec6190 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-004.html.ini @@ -0,0 +1,2 @@ +[masonry-item-placement-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html.ini new file mode 100644 index 00000000000..b710e020188 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/item-placement/masonry-item-placement-005.html.ini @@ -0,0 +1,2 @@ +[masonry-item-placement-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html.ini new file mode 100644 index 00000000000..bdaebf582b2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-columns-item-containing-block-is-grid-content-width.html.ini @@ -0,0 +1,2 @@ +[masonry-columns-item-containing-block-is-grid-content-width.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini new file mode 100644 index 00000000000..9dd30715c6b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/masonry-grid-template-columns-computed-withcontent.html.ini @@ -0,0 +1,84 @@ +[masonry-grid-template-columns-computed-withcontent.html] + [Property grid-template-rows value 'masonry'] + expected: FAIL + + [Property grid-template-columns value 'none'] + expected: FAIL + + [Property grid-template-columns value '20%'] + expected: FAIL + + [Property grid-template-columns value 'calc(-0.5em + 10px)'] + expected: FAIL + + [Property grid-template-columns value 'calc(0.5em + 10px)'] + expected: FAIL + + [Property grid-template-columns value 'calc(30% + 40px)'] + expected: FAIL + + [Property grid-template-columns value '5fr'] + expected: FAIL + + [Property grid-template-columns value 'min-content'] + expected: FAIL + + [Property grid-template-columns value 'max-content'] + expected: FAIL + + [Property grid-template-columns value 'auto'] + expected: FAIL + + [Property grid-template-columns value 'minmax(10px, auto)'] + expected: FAIL + + [Property grid-template-columns value 'minmax(20%, max-content)'] + expected: FAIL + + [Property grid-template-columns value 'minmax(min-content, calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-columns value 'minmax(auto, 0)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(70px)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(20%)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, 10px)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, [one two\] 20%)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(2, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-columns value 'repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])'] + expected: FAIL + + [Property grid-template-columns value 'min-content repeat(5, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-columns value '[\] 150px [\] 1fr [\]'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fill, 200px)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fit, [one\] 20%)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fill, minmax(100px, 5fr) [two\])'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fit, [three\] minmax(max-content, 6em) [four\])'] + expected: FAIL + + [Property grid-template-columns value '[one\] repeat(2, minmax(50px, auto)) [two\] 30px [three\] repeat(auto-fill, 10px) 40px [four five\] repeat(2, minmax(200px, auto)) [six\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-001.html.ini new file mode 100644 index 00000000000..3346f33548e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-001.html.ini @@ -0,0 +1,2 @@ +[masonry-order-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-002.html.ini new file mode 100644 index 00000000000..93e7786887e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/order/masonry-order-002.html.ini @@ -0,0 +1,2 @@ +[masonry-order-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/parsing/masonry-parsing.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/parsing/masonry-parsing.html.ini new file mode 100644 index 00000000000..752ff7a66da --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/parsing/masonry-parsing.html.ini @@ -0,0 +1,120 @@ +[masonry-parsing.html] + [e.style['grid-template-columns'\] = "masonry" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "masonry" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "masonry / masonry" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "masonry / masonry" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "masonry / masonry" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "masonry / masonry" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = "masonry / subgrid [foo\]" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "masonry / subgrid [foo\]" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "masonry / subgrid [foo\]" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "masonry / subgrid [foo\]" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = "10px / masonry" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "10px / masonry" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "10px / masonry" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "10px / masonry" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "masonry / masonry" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "masonry / subgrid [foo\]" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "10px / masonry" should not set unrelated longhands] + expected: FAIL + + [e.style['masonry-auto-flow'\] = "pack" should set the property value] + expected: FAIL + + [e.style['masonry-auto-flow'\] = "pack ordered" should set the property value] + expected: FAIL + + [e.style['masonry-auto-flow'\] = "ordered next" should set the property value] + expected: FAIL + + [e.style['masonry-auto-flow'\] = "next definite-first" should set the property value] + expected: FAIL + + [e.style['masonry-auto-flow'\] = "definite-first pack" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html.ini new file mode 100644 index 00000000000..48a9453dca7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/masonry/tentative/subgrid/masonry-subgrid-001.html.ini @@ -0,0 +1,2 @@ +[masonry-subgrid-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-computed.html.ini new file mode 100644 index 00000000000..f557f4ab1fd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-computed.html.ini @@ -0,0 +1,90 @@ +[grid-area-computed.html] + [Property grid-area value 'auto / auto / auto / auto'] + expected: FAIL + + [Property grid-row value 'auto / auto'] + expected: FAIL + + [Property grid-column-end value 'auto'] + expected: FAIL + + [Property grid-row value '-zπ'] + expected: FAIL + + [Property grid-row-start value 'AZ'] + expected: FAIL + + [Property grid-column-start value '-_π'] + expected: FAIL + + [Property grid-row-end value '_9'] + expected: FAIL + + [Property grid-area value '1 / 90 -a- / auto / auto'] + expected: FAIL + + [Property grid-row value '2 az / auto'] + expected: FAIL + + [Property grid-column value '9 / -19 zA'] + expected: FAIL + + [Property grid-row-start value '-19'] + expected: FAIL + + [Property grid-row-start value '9 -Z_'] + expected: FAIL + + [Property grid-column-start value '-44 Z'] + expected: FAIL + + [Property grid-row-end value '1 -πA'] + expected: FAIL + + [Property grid-column-end value '5 π_'] + expected: FAIL + + [Property grid-area value 'span 2 i / auto / auto / auto'] + expected: FAIL + + [Property grid-row value 'span 2 / auto'] + expected: FAIL + + [Property grid-column-start value 'span 1 i'] + expected: FAIL + + [Property grid-row-start value 'span 1'] + expected: FAIL + + [Property grid-row-end value 'span 2 i'] + expected: FAIL + + [Property grid-column-end value 'span 2'] + expected: FAIL + + [Property grid-row-start value 'span i'] + expected: FAIL + + [Property grid-row value 'span i / auto'] + expected: FAIL + + [Property grid-area value 'auto / i / auto / i'] + expected: FAIL + + [Property grid-area value 'auto / i / 2 j'] + expected: FAIL + + [Property grid-area value 'auto / i / 2 j / span 3 k'] + expected: FAIL + + [Property grid-row value 'auto / i'] + expected: FAIL + + [Property grid-column value '2 j / span 3 k'] + expected: FAIL + + [Property grid-column-end value '\\31st'] + expected: FAIL + + [Property grid-column-end value '\\31 st'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-shorthand.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-shorthand.html.ini new file mode 100644 index 00000000000..806247c3dd6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-shorthand.html.ini @@ -0,0 +1,159 @@ +[grid-area-shorthand.html] + [e.style['grid-area'\] = "auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "--a" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "--a" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "--a" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "--a" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "--a" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "a / b" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c / d" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c / d" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c / d" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c / d" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "a / b / c / d" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a- / 2 i span" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a- / 2 i span" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a- / 2 i span" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a- / 2 i span" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a- / 2 i span" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-area'\] = "1 / 2 / 3 / 4" should set grid-column-end] + expected: FAIL + + [e.style['grid-area'\] = "1 / 2 / 3 / 4" should set grid-column-start] + expected: FAIL + + [e.style['grid-area'\] = "1 / 2 / 3 / 4" should set grid-row-end] + expected: FAIL + + [e.style['grid-area'\] = "1 / 2 / 3 / 4" should set grid-row-start] + expected: FAIL + + [e.style['grid-area'\] = "1 / 2 / 3 / 4" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "one / 2" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "one / 2" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "one / 2" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "1 two / four 3" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "1 two / four 3" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "1 two / four 3" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "5 span" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "5 span" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "5 span" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "1 / two" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "1 / two" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "1 / two" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span 1 two / four 3 span" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span 1 two / four 3 span" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span 1 two / four 3 span" should not set unrelated longhands] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-valid.html.ini new file mode 100644 index 00000000000..303d66a2255 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-area-valid.html.ini @@ -0,0 +1,171 @@ +[grid-area-valid.html] + [e.style['grid-area'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / auto / auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "AuTo" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "auto/auto" should set the property value] + expected: FAIL + + [e.style['grid-column-end'\] = "AuTo" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "--a" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "-zπ" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "-zπ/-zπ" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "i / i" should set the property value] + expected: FAIL + + [e.style['grid-row-start'\] = "AZ" should set the property value] + expected: FAIL + + [e.style['grid-column-start'\] = "-_π" should set the property value] + expected: FAIL + + [e.style['grid-row-end'\] = "_9" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "+90 -a-" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "az 2" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "9" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "-19 zA" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "-A0 33" should set the property value] + expected: FAIL + + [e.style['grid-row-start'\] = "-19" should set the property value] + expected: FAIL + + [e.style['grid-row-start'\] = "9 -Z_" should set the property value] + expected: FAIL + + [e.style['grid-column-start'\] = "+90" should set the property value] + expected: FAIL + + [e.style['grid-column-start'\] = "Z -44" should set the property value] + expected: FAIL + + [e.style['grid-row-end'\] = "1 -πA" should set the property value] + expected: FAIL + + [e.style['grid-column-end'\] = "π_ +5" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "span 2 i" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "i 2 SpAn" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "span 1 i" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "span 2" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "i SpAn" should set the property value] + expected: FAIL + + [e.style['grid-row-start'\] = "span i" should set the property value] + expected: FAIL + + [e.style['grid-column-start'\] = "SpAn i 2" should set the property value] + expected: FAIL + + [e.style['grid-row-end'\] = "2 i span" should set the property value] + expected: FAIL + + [e.style['grid-column-end'\] = "2 SpAn" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / i" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / i / auto / i" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / i / auto / 2 i" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / i / auto / i" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / auto / auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / auto / i / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / j / i / k" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / auto / 2 / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "1 / i / 2 / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "i / i / auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "i / auto / i / auto" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / i / 2 j" should set the property value] + expected: FAIL + + [e.style['grid-area'\] = "auto / i / 2 j / span 3 k" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "auto / i" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "i / auto" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "2 i / auto" should set the property value] + expected: FAIL + + [e.style['grid-row'\] = "1 / auto" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "2 j / span 3 k" should set the property value] + expected: FAIL + + [e.style['grid-column-end'\] = "\\\\31st" should set the property value] + expected: FAIL + + [e.style['grid-column-end'\] = "\\\\31 st" should set the property value] + expected: FAIL + + [e.style['grid-column'\] = "\\\\31st / \\\\31 st" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-computed.html.ini new file mode 100644 index 00000000000..a3880631c3c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-computed.html.ini @@ -0,0 +1,75 @@ +[grid-auto-columns-computed.html] + [Property grid-auto-columns value '1px'] + expected: FAIL + + [Property grid-auto-columns value 'calc(10px + 0.5em)'] + expected: FAIL + + [Property grid-auto-columns value 'calc(10px - 0.5em)'] + expected: FAIL + + [Property grid-auto-columns value '4%'] + expected: FAIL + + [Property grid-auto-columns value '5fr'] + expected: FAIL + + [Property grid-auto-columns value 'min-content'] + expected: FAIL + + [Property grid-auto-columns value 'max-content'] + expected: FAIL + + [Property grid-auto-columns value 'auto'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(1px, 5fr)'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(calc(10px + 0.5em), max-content)'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(calc(10px - 0.5em), max-content)'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(4%, auto)'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(min-content, calc(10px + 0.5em))'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(auto, 4%)'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(1px)'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(calc(10px + 0.5em))'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(calc(10px - 0.5em))'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(4%)'] + expected: FAIL + + [Property grid-auto-columns value '0px'] + expected: FAIL + + [Property grid-auto-columns value '0%'] + expected: FAIL + + [Property grid-auto-columns value '0fr'] + expected: FAIL + + [Property grid-auto-columns value 'minmax(auto, 0%)'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(0px)'] + expected: FAIL + + [Property grid-auto-columns value '1px 2px 3px 0px'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(1px) minmax(2px, 3px) 4px'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-valid.html.ini new file mode 100644 index 00000000000..a56b39cea75 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-columns-valid.html.ini @@ -0,0 +1,90 @@ +[grid-auto-columns-valid.html] + [e.style['grid-auto-columns'\] = "1px" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "2em" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "4%" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "5fr" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "min-content" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "max-content" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "auto /**/" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(1px, 5fr)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(2em, min-content)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(calc(2em + 3ex), max-content)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(4%, auto)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(5vmin, 1px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(min-content, 2em)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(max-content, calc(2em + 3ex))" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(auto, 4%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(1px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(2em)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(calc(2em + 3ex))" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(4%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "0px" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "0%" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "0fr" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "minmax(auto, 0%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(0px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "auto auto" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "auto 10px" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "1px 2px 3px 0px" should set the property value] + expected: FAIL + + [e.style['grid-auto-columns'\] = "fit-content(1px) minmax(2px, 3px) 4px" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-computed.html.ini new file mode 100644 index 00000000000..0c2224162e7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-computed.html.ini @@ -0,0 +1,21 @@ +[grid-auto-flow-computed.html] + [Property grid-auto-flow value 'row'] + expected: FAIL + + [Property grid-auto-flow value 'column'] + expected: FAIL + + [Property grid-auto-flow value 'row dense'] + expected: FAIL + + [Property grid-auto-flow value 'column dense'] + expected: FAIL + + [Property grid-auto-flow value 'dense row'] + expected: FAIL + + [Property grid-auto-flow value 'dense column'] + expected: FAIL + + [Property grid-auto-flow value 'dense'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-valid.html.ini new file mode 100644 index 00000000000..5285e75dd10 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-flow-valid.html.ini @@ -0,0 +1,21 @@ +[grid-auto-flow-valid.html] + [e.style['grid-auto-flow'\] = "row" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "column" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "row dense" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "dense row" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "dense" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "column dense" should set the property value] + expected: FAIL + + [e.style['grid-auto-flow'\] = "dense column" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-computed.html.ini new file mode 100644 index 00000000000..99fe2bc9857 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-computed.html.ini @@ -0,0 +1,75 @@ +[grid-auto-rows-computed.html] + [Property grid-auto-rows value '1px'] + expected: FAIL + + [Property grid-auto-rows value 'calc(10px + 0.5em)'] + expected: FAIL + + [Property grid-auto-rows value 'calc(10px - 0.5em)'] + expected: FAIL + + [Property grid-auto-rows value '4%'] + expected: FAIL + + [Property grid-auto-rows value '5fr'] + expected: FAIL + + [Property grid-auto-rows value 'min-content'] + expected: FAIL + + [Property grid-auto-rows value 'max-content'] + expected: FAIL + + [Property grid-auto-rows value 'auto'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(1px, 5fr)'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(calc(10px + 0.5em), max-content)'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(calc(10px - 0.5em), max-content)'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(4%, auto)'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(min-content, calc(10px + 0.5em))'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(auto, 4%)'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(1px)'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(calc(10px + 0.5em))'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(calc(10px - 0.5em))'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(4%)'] + expected: FAIL + + [Property grid-auto-rows value '0px'] + expected: FAIL + + [Property grid-auto-rows value '0%'] + expected: FAIL + + [Property grid-auto-rows value '0fr'] + expected: FAIL + + [Property grid-auto-rows value 'minmax(auto, 0%)'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(0px)'] + expected: FAIL + + [Property grid-auto-rows value '1px 2px 3px 0px'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(1px) minmax(2px, 3px) 4px'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-valid.html.ini new file mode 100644 index 00000000000..22206611d37 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-auto-rows-valid.html.ini @@ -0,0 +1,90 @@ +[grid-auto-rows-valid.html] + [e.style['grid-auto-rows'\] = "1px" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "2em" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "4%" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "5fr" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "min-content" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "max-content" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "auto /**/" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(1px, 5fr)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(2em, min-content)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(calc(2em + 3ex), max-content)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(4%, auto)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(5vmin, 1px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(min-content, 2em)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(max-content, calc(2em + 3ex))" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(auto, 4%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(1px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(2em)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(calc(2em + 3ex))" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(4%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "0px" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "0%" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "0fr" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "minmax(auto, 0%)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(0px)" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "auto auto" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "auto 10px" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "1px 2px 3px 0px" should set the property value] + expected: FAIL + + [e.style['grid-auto-rows'\] = "fit-content(1px) minmax(2px, 3px) 4px" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shortest-serialization.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shortest-serialization.html.ini new file mode 100644 index 00000000000..5213cc08bb9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shortest-serialization.html.ini @@ -0,0 +1,48 @@ +[grid-column-shortest-serialization.html] + [Property grid-column value 'auto / auto'] + expected: FAIL + + [Property grid-column value 'auto'] + expected: FAIL + + [Property grid-column value '10 / auto'] + expected: FAIL + + [Property grid-column value '10'] + expected: FAIL + + [Property grid-column value '-10 / auto'] + expected: FAIL + + [Property grid-column value '-10'] + expected: FAIL + + [Property grid-column value 'first / first'] + expected: FAIL + + [Property grid-column value 'first'] + expected: FAIL + + [Property grid-column value 'span 2 / auto'] + expected: FAIL + + [Property grid-column value 'span 2'] + expected: FAIL + + [Property grid-column value '2 first / auto'] + expected: FAIL + + [Property grid-column value '2 first'] + expected: FAIL + + [Property grid-column value 'span first / auto'] + expected: FAIL + + [Property grid-column value 'span first'] + expected: FAIL + + [Property grid-column value 'span 2 first / auto'] + expected: FAIL + + [Property grid-column value 'span 2 first'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shorthand.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shorthand.html.ini new file mode 100644 index 00000000000..5d32982a494 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-column-shorthand.html.ini @@ -0,0 +1,144 @@ +[grid-column-shorthand.html] + [e.style['grid-column'\] = "auto / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "auto / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "auto / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "10 / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "10 / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "10 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "10" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "10" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "10" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "-10 / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "-10 / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "-10 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "-10" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "-10" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "-10" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span 2 / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span 2 / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span 2 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span 2" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span 2" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span 2" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "3 last / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "3 last / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "3 last / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "3 last" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "3 last" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "3 last" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span first / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span first / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span first / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span first" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span first" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span first" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first / auto" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first / auto" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "span 2 first" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "last / last" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "last / last" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "last / last" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-column'\] = "last" should set grid-column-end] + expected: FAIL + + [e.style['grid-column'\] = "last" should set grid-column-start] + expected: FAIL + + [e.style['grid-column'\] = "last" should not set unrelated longhands] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html.ini new file mode 100644 index 00000000000..11fe6f35133 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html.ini @@ -0,0 +1,120 @@ +[grid-columns-rows-get-set-multiple.html] + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFixedElement' : grid-template-columns = '7px 11px', grid-template-rows = '17px 2px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithPercentElement' : grid-template-columns = '400px 800px', grid-template-rows = '150px 450px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithPercentWithoutSize' : grid-template-columns = '3.5px 7px', grid-template-rows = '4px 12px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithAutoElement' : grid-template-columns = '0px 17px', grid-template-rows = '0px 3px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithEMElement' : grid-template-columns = '100px 120px', grid-template-rows = '150px 170px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithThreeItems' : grid-template-columns = '15px 0px 100px', grid-template-rows = '120px 18px 0px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFitContentAndFitAvailable' : grid-template-columns = 'none', grid-template-rows = 'none'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxContent' : grid-template-columns = '0px 0px', grid-template-rows = '0px 0px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxContentWithChildrenElement' : grid-template-columns = '7px 17px', grid-template-rows = '16px 3px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxAndFixed' : grid-template-columns = '240px 15px', grid-template-rows = '120px 210px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxAndMinMaxContent' : grid-template-columns = '240px 15px', grid-template-rows = '120px 210px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFractionFraction' : grid-template-columns = '320px 480px', grid-template-rows = '225px 375px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFractionMinMax' : grid-template-columns = '45px 755px', grid-template-rows = '586px 14px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcCalc' : grid-template-columns = '200px 100px', grid-template-rows = '150px 75px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcAndFixed' : grid-template-columns = '400px 80px', grid-template-rows = '88px 150px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcAndMinMax' : grid-template-columns = '190px 80px', grid-template-rows = '150px 53px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcInsideMinMax' : grid-template-columns = '400px 120px', grid-template-rows = '150px 175px'] + expected: FAIL + + [Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithAutoInsideMinMax' : grid-template-columns = '0px 30px', grid-template-rows = '132px 60px'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '18px 22px', element.style.gridTemplateColumns = '18px 22px', grid-template-rows = '66px 70px', element.style.gridTemplateRows = '66px 70px'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '440px 640px', element.style.gridTemplateColumns = '55% 80%', grid-template-rows = '240px 378px', element.style.gridTemplateRows = '40% 63%'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '0px 0px', element.style.gridTemplateColumns = 'auto auto', grid-template-rows = '0px 0px', element.style.gridTemplateRows = 'auto auto'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '0px 160px 22px', element.style.gridTemplateColumns = 'auto 16em 22px', grid-template-rows = '336px 100px 0px', element.style.gridTemplateRows = '56% 10em auto'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '160px 20px', element.style.gridTemplateColumns = '16em minmax(16px, 20px)', grid-template-rows = '90px 0px', element.style.gridTemplateRows = 'minmax(10%, 15%) auto'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '160px 640px', element.style.gridTemplateColumns = '16em 2fr', grid-template-rows = '600px 0px', element.style.gridTemplateRows = '14fr auto'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '25px 20px', element.style.gridTemplateColumns = 'calc(25px) calc(2em)', grid-template-rows = '0px 60px', element.style.gridTemplateRows = 'auto calc(10%)'] + expected: FAIL + + [Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '345px 92px', element.style.gridTemplateColumns = 'calc(25px + 40%) minmax(min-content, calc(10% + 12px))', grid-template-rows = '100px 0px', element.style.gridTemplateRows = 'minmax(calc(75% - 350px), max-content) auto'] + expected: FAIL + + [Test setting wrong/invalid values through CSS] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'none auto', grid-template-rows = 'none auto'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'none 16em', grid-template-rows = 'none 56%'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'none none', grid-template-rows = 'none none'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'auto none', grid-template-rows = 'auto none'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'auto none 16em', grid-template-rows = 'auto 18em none'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = '-webkit-fit-content -webkit-fit-content', grid-template-rows = '-webkit-fit-available -webkit-fit-available'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = '-10px minmax(16px, 32px)', grid-template-rows = 'minmax(10%, 15%) -10vw'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = '10px minmax(16px, -1vw)', grid-template-rows = 'minmax(-1%, 15%) 10vw'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = '10px calc(16px 30px)', grid-template-rows = 'calc(25px + auto) 2em'] + expected: FAIL + + [Test setting bad JS values: grid-template-columns = 'minmax(min-content, calc() 250px', grid-template-rows = 'calc(2em('] + expected: FAIL + + [Test setting grid-template-columns and grid-template-rows to 'inherit' through JS] + expected: FAIL + + [Test the default value] + expected: FAIL + + [Test setting grid-template-columns and grid-template-rows to 'initial' through JS] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-content-sized-columns-resolution.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-content-sized-columns-resolution.html.ini new file mode 100644 index 00000000000..75a20a0c74d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-content-sized-columns-resolution.html.ini @@ -0,0 +1,126 @@ +[grid-content-sized-columns-resolution.html] + [Element 'gridMinContentFixedAndAuto' grid-template-columns value computes to '15px 75px'] + expected: FAIL + + [Element 'gridAutoAndAuto' grid-template-columns value computes to '45px 45px'] + expected: FAIL + + [Element 'gridMinContentAndMinContentFixed' grid-template-columns value computes to '20px 30px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContent' grid-template-columns value computes to '70px 20px'] + expected: FAIL + + [Element 'gridFixedMinContentAndMaxContent' grid-template-columns value computes to '10px 80px'] + expected: FAIL + + [Element 'gridFixedMaxContentAndMinContent' grid-template-columns value computes to '60px 30px'] + expected: FAIL + + [Element 'gridMinContentAndMaxContentFixed' grid-template-columns value computes to '20px 70px'] + expected: FAIL + + [Element 'gridMaxContentFixedAndAuto' grid-template-columns value computes to '65px 25px'] + expected: FAIL + + [Element 'gridAutoMinContent' grid-template-columns value computes to '70px 20px'] + expected: FAIL + + [Element 'gridAutoMaxContent' grid-template-columns value computes to '20px 70px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContentFixed' grid-template-columns value computes to '70px 20px'] + expected: FAIL + + [Element 'gridMaxContentAndMaxContentFixed' grid-template-columns value computes to '55px 35px'] + expected: FAIL + + [Element 'gridMinContentFixedAndAutoUnsortedConstrained' grid-template-columns value computes to '0px 40px'] + expected: FAIL + + [Element 'gridAutoAndAutoUnsortedConstrained' grid-template-columns value computes to '10px 30px'] + expected: FAIL + + [Element 'gridMinContentAndMinContentFixedUnsortedConstrained' grid-template-columns value computes to '0px 40px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContentUnsortedConstrained' grid-template-columns value computes to '0px 70px'] + expected: FAIL + + [Element 'gridFixedMinContentAndMaxContentUnsortedConstrained' grid-template-columns value computes to '10px 70px'] + expected: FAIL + + [Element 'gridFixedMaxContentAndMinContentUnsortedConstrained' grid-template-columns value computes to '10px 40px'] + expected: FAIL + + [Element 'gridMinContentAndMaxContentFixedUnsortedConstrained' grid-template-columns value computes to '0px 90px'] + expected: FAIL + + [Element 'gridMaxContentFixedAndAutoUnsortedConstrained' grid-template-columns value computes to '10px 40px'] + expected: FAIL + + [Element 'gridAutoMinContentUnsortedConstrained' grid-template-columns value computes to '0px 60px'] + expected: FAIL + + [Element 'gridAutoMaxContentUnsortedConstrained' grid-template-columns value computes to '0px 90px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContentFixedUnsortedConstrained' grid-template-columns value computes to '50px 40px'] + expected: FAIL + + [Element 'gridMaxContentAndMaxContentFixedUnsortedConstrained' grid-template-columns value computes to '40px 70px'] + expected: FAIL + + [Element 'gridMinContentFixedAndAutoUnsorted' grid-template-columns value computes to '15px 90px'] + expected: FAIL + + [Element 'gridAutoAndAutoUnsorted' grid-template-columns value computes to '60px 30px'] + expected: FAIL + + [Element 'gridMinContentAndMinContentFixedUnsorted' grid-template-columns value computes to '0px 40px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContentUnsorted' grid-template-columns value computes to '0px 70px'] + expected: FAIL + + [Element 'gridFixedMinContentAndMaxContentUnsorted' grid-template-columns value computes to '10px 70px'] + expected: FAIL + + [Element 'gridFixedMaxContentAndMinContentUnsorted' grid-template-columns value computes to '50px 40px'] + expected: FAIL + + [Element 'gridMinContentAndMaxContentFixedUnsorted' grid-template-columns value computes to '0px 90px'] + expected: FAIL + + [Element 'gridMaxContentFixedAndAutoUnsorted' grid-template-columns value computes to '15px 70px'] + expected: FAIL + + [Element 'gridAutoMinContentUnsorted' grid-template-columns value computes to '50px 60px'] + expected: FAIL + + [Element 'gridAutoMaxContentUnsorted' grid-template-columns value computes to '0px 90px'] + expected: FAIL + + [Element 'gridMaxContentAndMinContentFixedUnsorted' grid-template-columns value computes to '50px 40px'] + expected: FAIL + + [Element 'gridMaxContentAndMaxContentFixedUnsorted' grid-template-columns value computes to '40px 70px'] + expected: FAIL + + [Element 'gridMinContentFixedAndAutoAboveLimits' grid-template-columns value computes to '15px 95px'] + expected: FAIL + + [Element 'gridMaxContentFixedAndAutoAboveLimits' grid-template-columns value computes to '15px 135px'] + expected: FAIL + + [Element 'gridMinContentFixedAndFixedFixedAndAuto' grid-template-columns value computes to '20px 20px 60px'] + expected: FAIL + + [Element 'gridAutoAndFixedFixedAndMaxContentFixed' grid-template-columns value computes to '110px 20px 20px'] + expected: FAIL + + [Element 'gridMaxContentAndMaxContentFixedAndMaxContent' grid-template-columns value computes to '70px 20px 50px'] + expected: FAIL + + [Element 'gridAutoAndMinContentFixedAndMinContent' grid-template-columns value computes to '55px 30px 65px'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shortest-serialization.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shortest-serialization.html.ini new file mode 100644 index 00000000000..51367366f6b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shortest-serialization.html.ini @@ -0,0 +1,45 @@ +[grid-row-shortest-serialization.html] + [Property grid-row value 'auto / auto'] + expected: FAIL + + [Property grid-row value 'auto'] + expected: FAIL + + [Property grid-row value '10 / auto'] + expected: FAIL + + [Property grid-row value '10'] + expected: FAIL + + [Property grid-row value '-10 / auto'] + expected: FAIL + + [Property grid-row value '-10'] + expected: FAIL + + [Property grid-row value 'span 2 / auto'] + expected: FAIL + + [Property grid-row value 'span 2'] + expected: FAIL + + [Property grid-row value '3 last / auto'] + expected: FAIL + + [Property grid-row value '3 last'] + expected: FAIL + + [Property grid-row value 'span first / auto'] + expected: FAIL + + [Property grid-row value 'span first'] + expected: FAIL + + [Property grid-row value 'span 2 first / auto'] + expected: FAIL + + [Property grid-row value 'span 2 first'] + expected: FAIL + + [Property grid-row value 'last / last'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shorthand.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shorthand.html.ini new file mode 100644 index 00000000000..cf104a8bac2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-row-shorthand.html.ini @@ -0,0 +1,144 @@ +[grid-row-shorthand.html] + [e.style['grid-row'\] = "auto / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "auto / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "auto / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "10 / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "10 / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "10 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "10" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "10" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "10" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "-10 / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "-10 / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "-10 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "-10" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "-10" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "-10" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span 2 / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span 2 / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span 2 / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span 2" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span 2" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span 2" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "3 last / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "3 last / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "3 last / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "3 last" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "3 last" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "3 last" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span first / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span first / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span first / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span first" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span first" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span first" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first / auto" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first / auto" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first / auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "span 2 first" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "last / last" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "last / last" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "last / last" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-row'\] = "last" should set grid-row-end] + expected: FAIL + + [e.style['grid-row'\] = "last" should set grid-row-start] + expected: FAIL + + [e.style['grid-row'\] = "last" should not set unrelated longhands] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-serialization.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-serialization.html.ini new file mode 100644 index 00000000000..ba00bc04b8d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-serialization.html.ini @@ -0,0 +1,363 @@ +[grid-shorthand-serialization.html] + [e.style.cssText = grid: auto-flow auto / 100px 100px should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow auto / 100px 100px should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid: auto-flow auto / 100px 100px; grid-template-areas: "one two" "three four" should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow auto / 100px 100px; grid-template-areas: "one two" "three four" should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow auto / 100px 100px; grid-template-areas: "one two" "three four" should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow auto / 100px 100px; grid-template-areas: "one two" "three four" should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid: 30px 40px / 50px 60px; grid-auto-flow: column should set grid] + expected: FAIL + + [e.style.cssText = grid: 30px 40px / 50px 60px; grid-auto-flow: column should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: 30px 40px / 50px 60px; grid-auto-flow: column should set grid-template] + expected: FAIL + + [cssText ('grid: 30px 40px / 50px 60px; grid-auto-flow: column') must contain 'grid-template: 30px 40px / 50px 60px;' in its serialization] + expected: FAIL + + [cssText ('grid: 30px 40px / 50px 60px; grid-auto-flow: column') must contain 'grid-auto-rows: auto;' in its serialization] + expected: FAIL + + [cssText ('grid: 30px 40px / 50px 60px; grid-auto-flow: column') must contain 'grid-auto-columns: auto;' in its serialization] + expected: FAIL + + [cssText ('grid: 30px 40px / 50px 60px; grid-auto-flow: column') must contain 'grid-auto-flow: column;' in its serialization] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: 20px should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: 20px should set grid-template] + expected: FAIL + + [cssText ('grid: auto-flow / 10px; grid-template-rows: 20px') must contain 'grid: 20px / 10px;' in its serialization] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(2, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(2, 20px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(2, 20px) repeat(3, 30px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(2, 20px) repeat(3, 30px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(auto-fill, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(auto-fill, 20px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(auto-fit, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-rows: repeat(auto-fit, 20px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: 10px / auto; grid-template-columns: 20px should set grid] + expected: FAIL + + [e.style.cssText = grid: 10px / auto; grid-template-columns: 20px should set grid-template] + expected: FAIL + + [cssText ('grid: 10px / auto; grid-template-columns: 20px') must contain 'grid: 10px / 20px;' in its serialization] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(2, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(2, 20px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(2, 20px) repeat(3, 30px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(2, 20px) repeat(3, 30px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(auto-fill, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(auto-fill, 20px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(auto-fit, 20px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow / 10px; grid-template-columns: repeat(auto-fit, 20px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-flow: inherit should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / 2px; grid-auto-flow: row should set grid] + expected: FAIL + + [e.style.cssText = grid: none / 2px; grid-auto-flow: row should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / 2px; grid-auto-columns: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / 2px; grid-auto-rows: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow; grid-auto-columns: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-auto-columns: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow dense / 2px; grid-auto-rows: auto should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / 2px; grid-auto-columns: 3px should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: 1px / auto-flow 2px; grid-auto-rows: 3px should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: 3px should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(2, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fill, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: none / auto-flow 1px; grid-template-columns: repeat(auto-fit, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: 3px should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(2, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fill, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid-auto-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid-auto-flow] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid-auto-rows] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid: auto-flow 1px / none; grid-template-rows: repeat(auto-fit, 3px) should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 3px); grid-template-areas: "one two" "three four" should set grid] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 3px); grid-template-areas: "one two" "three four" should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 3px); grid-template-areas: "one two" "three four" should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 3px); grid-template-areas: "one two" "three four" should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 1fr); grid-template-areas: "one two" "three four" should set grid] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 1fr); grid-template-areas: "one two" "three four" should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 1fr); grid-template-areas: "one two" "three four" should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(2, 1fr); grid-template-areas: "one two" "three four" should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fill, 3px); grid-template-areas: "one two" "three four" should set grid] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fill, 3px); grid-template-areas: "one two" "three four" should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fill, 3px); grid-template-areas: "one two" "three four" should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fill, 3px); grid-template-areas: "one two" "three four" should set grid-template-rows] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fit, 3px); grid-template-areas: "one two" "three four" should set grid] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fit, 3px); grid-template-areas: "one two" "three four" should set grid-template-areas] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fit, 3px); grid-template-areas: "one two" "three four" should set grid-template-columns] + expected: FAIL + + [e.style.cssText = grid-template-rows: auto auto; grid-template-columns: repeat(auto-fit, 3px); grid-template-areas: "one two" "three four" should set grid-template-rows] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-valid.html.ini new file mode 100644 index 00000000000..ebfd9f31f66 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand-valid.html.ini @@ -0,0 +1,147 @@ +[grid-shorthand-valid.html] + [e.style['grid'\] = "none" should set the property value] + expected: FAIL + + [e.style['grid'\] = "none / none" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto / auto" should set the property value] + expected: FAIL + + [e.style['grid'\] = "none / [a\] 0px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "none / [\] 0px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] 10px / auto" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] 10px / none" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[\] 10px [\] / [\] auto [\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\" 10px [\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[\] \\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\" 10px [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" auto" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a a a\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" / 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" / 20%" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" / 5fr" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[\] \\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [\] [\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] [b\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" / 0" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" 10px / 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] \\"b\\" 10px [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] [a\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] [\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" 10px [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "[a\] \\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" \\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" [a\] \\"b\\" [a\] / 0" should set the property value] + expected: FAIL + + [e.style['grid'\] = "\\"a\\" \\"a\\" [a\] [a\] \\"b\\" / auto" should set the property value] + expected: FAIL + + [e.style['grid'\] = "100px / auto-flow dense 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 1fr / 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "100px / dense auto-flow 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "dense auto-flow 1fr / 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "100px / auto-flow 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto-flow 1fr / 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "none / auto-flow 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto-flow 1fr / none" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto / auto-flow 100px" should set the property value] + expected: FAIL + + [e.style['grid'\] = "auto-flow 1fr / auto" should set the property value] + expected: FAIL + + [e.style['grid'\] = "1fr / 1fr" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand.html.ini new file mode 100644 index 00000000000..2bbb927d3cb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-shorthand.html.ini @@ -0,0 +1,189 @@ +[grid-shorthand.html] + [e.style['grid'\] = "none" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "none" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "none" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "none" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "none" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "none" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "none" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "10px / 20%" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "none / 10px" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "10px / auto-flow dense 20px" should not set unrelated longhands] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-auto-columns] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-auto-flow] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-auto-rows] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-template-areas] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-template-columns] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should set grid-template-rows] + expected: FAIL + + [e.style['grid'\] = "auto-flow dense 30px / 40px" should not set unrelated longhands] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-computed.html.ini new file mode 100644 index 00000000000..be39bc5afc0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-computed.html.ini @@ -0,0 +1,27 @@ +[grid-template-areas-computed.html] + [Property grid-template-areas value 'none'] + expected: FAIL + + [Property grid-template-areas value '"first"'] + expected: FAIL + + [Property grid-template-areas value '"first second"'] + expected: FAIL + + [Property grid-template-areas value '"1st 2nd 3rd"'] + expected: FAIL + + [Property grid-template-areas value '"first second" "third fourth"'] + expected: FAIL + + [Property grid-template-areas value '"first second" "third ." "1st 2nd" "3rd 4th"'] + expected: FAIL + + [Property grid-template-areas value '" a \t b "'] + expected: FAIL + + [Property grid-template-areas value '"c\td"'] + expected: FAIL + + [Property grid-template-areas value '"first ..."'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-one-cell.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-one-cell.html.ini new file mode 100644 index 00000000000..3025564e3b7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-one-cell.html.ini @@ -0,0 +1,12 @@ +[grid-template-areas-one-cell.html] + ["grid-template-areas: '';" should be invalid.] + expected: FAIL + + ["grid-template-areas: '' '';" should be invalid.] + expected: FAIL + + ["grid-template-areas: '$';" should be invalid.] + expected: FAIL + + ["grid-template-areas: ' ';" should be invalid.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-valid.html.ini new file mode 100644 index 00000000000..db5d9c76334 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-areas-valid.html.ini @@ -0,0 +1,27 @@ +[grid-template-areas-valid.html] + [e.style['grid-template-areas'\] = "none" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"first\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"first second\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"1st 2nd 3rd\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"first second\\" \\"third fourth\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"first second\\" \\"third .\\" \\"1st 2nd\\" \\"3rd 4th\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\" a \\t b \\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"c\\td\\"" should set the property value] + expected: FAIL + + [e.style['grid-template-areas'\] = "\\"first ...\\"" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-implicit-track.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-implicit-track.html.ini new file mode 100644 index 00000000000..0e861adc5cc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-implicit-track.html.ini @@ -0,0 +1,72 @@ +[grid-template-columns-computed-implicit-track.html] + [Property grid-template-columns value 'none' computes to '10px'] + expected: FAIL + + [Property grid-template-columns value '1px' computes to '10px 1px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\]' computes to '10px 1px [a\]'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] 2px' computes to '10px 1px [a\] 2px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px' computes to '10px [a\] 1px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\]' computes to '10px [a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(1, 2px) 3px' computes to '10px 1px 2px 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fill, 2px) 3px' computes to '10px 1px 2px 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fit, 2px) 3px' computes to '10px 1px 0px 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 2px 3px [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 2px 3px [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 0px 0px [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 0px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 0px [b\] 0px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 0px [c d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 0px [b\] 0px 4px [d\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-nogrid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-nogrid.html.ini new file mode 100644 index 00000000000..b538cd273ef --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-nogrid.html.ini @@ -0,0 +1,96 @@ +[grid-template-columns-computed-nogrid.html] + [Property grid-template-columns value 'none'] + expected: FAIL + + [Property grid-template-columns value '1px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\]'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] 2px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(1, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fill, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fit, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(2, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) [d\] 4px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, 2px [a\] 3px) [b\] repeat(auto-fill, [c\] 200% [d\]) [e\] 300%'] + expected: FAIL + + [Property grid-template-columns value '[a\] repeat(auto-fill, [b\] 200% [c\]) repeat(1, 2px [d\] 3px) [e\] 300%'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, [a\] 2px [b\] 3px) [b\] repeat(auto-fill, [c\] 200% [d\]) [e\] 300%'] + expected: FAIL + + [Property grid-template-columns value '[a\] repeat(auto-fill, [b\] 200% [c\]) repeat(1, 2px [d\] 3px [e\]) [f\] 300%'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b c\] repeat(auto-fill, [d\] 200% [e f\]) [g\] 2px repeat(1, 3px [d e\] 4px [e f\]) [g\] 300% [h\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-withcontent.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-withcontent.html.ini new file mode 100644 index 00000000000..ef169e1c74e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed-withcontent.html.ini @@ -0,0 +1,90 @@ +[grid-template-columns-computed-withcontent.html] + [Property grid-template-columns value 'none'] + expected: FAIL + + [Property grid-template-columns value '20%'] + expected: FAIL + + [Property grid-template-columns value 'calc(-0.5em + 10px)'] + expected: FAIL + + [Property grid-template-columns value 'calc(0.5em + 10px)'] + expected: FAIL + + [Property grid-template-columns value 'calc(30% + 40px)'] + expected: FAIL + + [Property grid-template-columns value '5fr'] + expected: FAIL + + [Property grid-template-columns value 'min-content'] + expected: FAIL + + [Property grid-template-columns value 'max-content'] + expected: FAIL + + [Property grid-template-columns value 'auto'] + expected: FAIL + + [Property grid-template-columns value 'minmax(10px, auto)'] + expected: FAIL + + [Property grid-template-columns value 'minmax(20%, max-content)'] + expected: FAIL + + [Property grid-template-columns value 'minmax(min-content, calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-columns value 'minmax(auto, 0)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(70px)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(20%)'] + expected: FAIL + + [Property grid-template-columns value 'fit-content(calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, 10px)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(1, [one two\] 20%)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(2, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-columns value 'repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])'] + expected: FAIL + + [Property grid-template-columns value 'min-content repeat(5, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-columns value '[\] 150px [\] 1fr [\]'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fill, 200px)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fit, [one\] 20%)'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fill, minmax(100px, 5fr) [two\])'] + expected: FAIL + + [Property grid-template-columns value 'repeat(auto-fit, [three\] minmax(max-content, 6em) [four\])'] + expected: FAIL + + [Property grid-template-columns value '[a\] 21px [b\] repeat(auto-fill, [c\] 22px [d\] 23px [e\]) [f\] 24px [g\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 21px [b c\] repeat(auto-fill, [d e\] 22px [f g h\] 23px [i j k l\]) [m n\] 24px [o\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] repeat(2, [b\] 20px [c d\] 21px [e f g\]) [h i\] repeat(auto-fit, [j\] 22px [k l m\] 23px [n o p q\]) [r s\]'] + expected: FAIL + + [Property grid-template-columns value '[one\] repeat(2, minmax(50px, auto)) [two\] 30px [three\] repeat(auto-fill, 10px) 40px [four five\] repeat(2, minmax(200px, auto)) [six\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed.html.ini new file mode 100644 index 00000000000..32563c53eee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-computed.html.ini @@ -0,0 +1,72 @@ +[grid-template-columns-computed.html] + [Property grid-template-columns value 'none'] + expected: FAIL + + [Property grid-template-columns value '1px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\]'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] 2px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(1, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fill, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px repeat(auto-fit, 2px) 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-columns value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-columns value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-valid.html.ini new file mode 100644 index 00000000000..d4ce8a27c8f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-columns-valid.html.ini @@ -0,0 +1,102 @@ +[grid-template-columns-valid.html] + [e.style['grid-template-columns'\] = "none" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "10px" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "20%" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "calc(-0.5em + 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "calc(0.5em + 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "calc(30% + 40vw)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "5fr" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "min-content" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "max-content" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(10px, auto)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(20%, max-content)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(calc(-0.5em + 10px), min-content)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(calc(0.5em + 10px), 5fr)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(calc(30% + 40vw), 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(min-content, 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(max-content, calc(-0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "minmax(auto, calc(0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "fit-content(10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "fit-content(20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "fit-content(calc(-0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "fit-content(calc(0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "fit-content(calc(30% + 40vw))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(1, [\] 10px [\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(1, [one two\] 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(2, minmax(10px, auto))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "min-content repeat(5, minmax(10px, auto))" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "[\] 150px [\] 1fr [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(auto-fill, 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(auto-fit, [one\] 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(auto-fill, minmax(30px, 5fr) [two\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "repeat(auto-fit, [three\] minmax(max-content, 6em) [four\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "[one\] repeat(2, minmax(10px, auto)) [two\] 30px [three\] repeat(auto-fill, 10px) 40px [four five\] repeat(2, minmax(10px, auto)) [six\]" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-important.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-important.html.ini new file mode 100644 index 00000000000..abc7819936a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-important.html.ini @@ -0,0 +1,3 @@ +[grid-template-important.html] + [grid-template followed by !important] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-node-not-connected.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-node-not-connected.html.ini new file mode 100644 index 00000000000..6132cd2301b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-node-not-connected.html.ini @@ -0,0 +1,3 @@ +[grid-template-node-not-connected.html] + [grid-template-node-not-connected] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-001.html.ini new file mode 100644 index 00000000000..2508db25383 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-001.html.ini @@ -0,0 +1,36 @@ +[grid-template-repeat-auto-computed-withcontent-001.html] + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 3] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 4] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 5] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 6] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 4 / 5] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 4 / 6] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 3 / 6] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fill, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 3] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fill, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 4] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fill, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 5] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fill, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 4 / 7] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fill, [e f\] 3px [g\] 4px [h\]) [i\] 5px [k\] 6px [l m\] ' gridColumn = 3 / 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-002.html.ini new file mode 100644 index 00000000000..0bcf5472c81 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-repeat-auto-computed-withcontent-002.html.ini @@ -0,0 +1,51 @@ +[grid-template-repeat-auto-computed-withcontent-002.html] + [Property grid-template-rows value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridRow = 3] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridRow = 5] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridRow = 3 / 8] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridRow = 4 / span 2] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridRow = 4 / 5] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 3] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 6] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 3 / 8] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 5 / span 2] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 7 / span 2] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 5 / 8] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\] 5px [i j\]) [k\] 7px [k\] 8px [l m\]' gridColumn = 8 / 10] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i j\] 7px [k\] 8px [l m\]' gridColumn = 3] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i j\] 7px [k\] 8px [l m\]' gridColumn = 6] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i j\] 7px [k\] 8px [l m\]' gridColumn = 3 / 8] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i j\] 7px [k\] 8px [l m\]' gridColumn = 6 / span 2] + expected: FAIL + + [Property grid-template-columns value '[a\] 1px [b\] 2px [c d\] repeat(auto-fit, [e f\] 3px [g\] 4px [h\]) [i j\] 7px [k\] 8px [l m\]' gridColumn = 5 / 10] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-implicit-track.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-implicit-track.html.ini new file mode 100644 index 00000000000..8c45e5df853 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-implicit-track.html.ini @@ -0,0 +1,72 @@ +[grid-template-rows-computed-implicit-track.html] + [Property grid-template-rows value 'none' computes to '10px'] + expected: FAIL + + [Property grid-template-rows value '1px' computes to '10px 1px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\]' computes to '10px 1px [a\]'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] 2px' computes to '10px 1px [a\] 2px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px' computes to '10px [a\] 1px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\]' computes to '10px [a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(1, 2px) 3px' computes to '10px 1px 2px 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fill, 2px) 3px' computes to '10px 1px 2px 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fit, 2px) 3px' computes to '10px 1px 0px 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 2px 3px [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 2px 3px [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px' computes to '10px 1px [a\] 0px 0px [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px' computes to '10px 1px [a b\] 0px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]' computes to '10px [a\] 1px 0px [b\] 0px 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 2px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%' computes to '10px 1px [a b\] 0px [c d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 2px [b\] 3px 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]' computes to '10px [a\] 1px 0px [b\] 0px 4px [d\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-nogrid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-nogrid.html.ini new file mode 100644 index 00000000000..0ef106299f6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-nogrid.html.ini @@ -0,0 +1,72 @@ +[grid-template-rows-computed-nogrid.html] + [Property grid-template-rows value 'none'] + expected: FAIL + + [Property grid-template-rows value '1px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\]'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] 2px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(1, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fill, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fit, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-withcontent.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-withcontent.html.ini new file mode 100644 index 00000000000..410aa9af24a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed-withcontent.html.ini @@ -0,0 +1,81 @@ +[grid-template-rows-computed-withcontent.html] + [Property grid-template-rows value 'none'] + expected: FAIL + + [Property grid-template-rows value '20%'] + expected: FAIL + + [Property grid-template-rows value 'calc(-0.5em + 10px)'] + expected: FAIL + + [Property grid-template-rows value 'calc(0.5em + 10px)'] + expected: FAIL + + [Property grid-template-rows value 'calc(30% + 40px)'] + expected: FAIL + + [Property grid-template-rows value '5fr'] + expected: FAIL + + [Property grid-template-rows value 'min-content'] + expected: FAIL + + [Property grid-template-rows value 'max-content'] + expected: FAIL + + [Property grid-template-rows value 'auto'] + expected: FAIL + + [Property grid-template-rows value 'minmax(10px, auto)'] + expected: FAIL + + [Property grid-template-rows value 'minmax(20%, max-content)'] + expected: FAIL + + [Property grid-template-rows value 'minmax(min-content, calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-rows value 'minmax(auto, 0)'] + expected: FAIL + + [Property grid-template-rows value 'fit-content(70px)'] + expected: FAIL + + [Property grid-template-rows value 'fit-content(20%)'] + expected: FAIL + + [Property grid-template-rows value 'fit-content(calc(-0.5em + 10px))'] + expected: FAIL + + [Property grid-template-rows value 'repeat(1, 10px)'] + expected: FAIL + + [Property grid-template-rows value 'repeat(1, [one two\] 20%)'] + expected: FAIL + + [Property grid-template-rows value 'repeat(2, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-rows value 'repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])'] + expected: FAIL + + [Property grid-template-rows value 'min-content repeat(5, minmax(10px, auto))'] + expected: FAIL + + [Property grid-template-rows value '[\] 150px [\] 1fr [\]'] + expected: FAIL + + [Property grid-template-rows value 'repeat(auto-fill, 200px)'] + expected: FAIL + + [Property grid-template-rows value 'repeat(auto-fit, [one\] 20%)'] + expected: FAIL + + [Property grid-template-rows value 'repeat(auto-fill, minmax(100px, 5fr) [two\])'] + expected: FAIL + + [Property grid-template-rows value 'repeat(auto-fit, [three\] minmax(max-content, 6em) [four\])'] + expected: FAIL + + [Property grid-template-rows value '[one\] repeat(2, minmax(50px, auto)) [two\] 30px [three\] repeat(auto-fill, 10px) 40px [four five\] repeat(2, minmax(200px, auto)) [six\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed.html.ini new file mode 100644 index 00000000000..7b42459d9d2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-computed.html.ini @@ -0,0 +1,72 @@ +[grid-template-rows-computed.html] + [Property grid-template-rows value 'none'] + expected: FAIL + + [Property grid-template-rows value '1px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\]'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] 2px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px [b\]'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(1, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fill, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px repeat(auto-fit, 2px) 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, 2px 3px) [b\] 4px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(1, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fill, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '1px [a\] repeat(auto-fit, [b\] 2px [c\]) [d\] 3px'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(1, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fill, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1px repeat(auto-fit, 2px [b\] 3px) 4px [d\]'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(1, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fill, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '100% [a\] repeat(auto-fit, [b\] 200% [c\]) [d\] 300%'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(1, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fill, 2em [b\] 3em) 4em [d\]'] + expected: FAIL + + [Property grid-template-rows value '[a\] 1em repeat(auto-fit, 2em [b\] 3em) 4em [d\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-valid.html.ini new file mode 100644 index 00000000000..e54295abcc5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-rows-valid.html.ini @@ -0,0 +1,102 @@ +[grid-template-rows-valid.html] + [e.style['grid-template-rows'\] = "none" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "10px" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "20%" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "calc(-0.5em + 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "calc(0.5em + 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "calc(30% + 40vw)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "5fr" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "min-content" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "max-content" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "auto" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(10px, auto)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(20%, max-content)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(calc(-0.5em + 10px), min-content)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(calc(0.5em + 10px), 5fr)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(calc(30% + 40vw), 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(min-content, 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(max-content, calc(-0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "minmax(auto, calc(0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "fit-content(10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "fit-content(20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "fit-content(calc(-0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "fit-content(calc(0.5em + 10px))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "fit-content(calc(30% + 40vw))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(1, [\] 10px [\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(1, [one two\] 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(2, minmax(10px, auto))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(2, fit-content(20%) [three four\] 30px 40px [five six\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "min-content repeat(5, minmax(10px, auto))" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "[\] 150px [\] 1fr [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(auto-fill, 10px)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(auto-fit, [one\] 20%)" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(auto-fill, minmax(30px, 5fr) [two\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "repeat(auto-fit, [three\] minmax(max-content, 6em) [four\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "[one\] repeat(2, minmax(10px, auto)) [two\] 30px [three\] repeat(auto-fill, 10px) 40px [four five\] repeat(2, minmax(10px, auto)) [six\]" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-areas-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-areas-valid.html.ini new file mode 100644 index 00000000000..25e5fb05d24 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-areas-valid.html.ini @@ -0,0 +1,15 @@ +[grid-template-shorthand-areas-valid.html] + [grid-template: none / 1px and "grid-template-areas: "a";" should be valid.] + expected: FAIL + + [grid-template: none / none and "grid-template-areas: "a";" should be valid.] + expected: FAIL + + [grid-template: auto / 1px and "grid-template-areas: "a a a";" should be valid.] + expected: FAIL + + [grid-template: auto / auto and "grid-template-areas: "a a a";" should be valid.] + expected: FAIL + + [grid-template: 10px 20px 30px / 40px 50px 60px 70px and "grid-template-areas: "a . b ." "c d . e" "f g h .";" should be valid.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-valid.html.ini new file mode 100644 index 00000000000..3096e65f0f7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand-valid.html.ini @@ -0,0 +1,120 @@ +[grid-template-shorthand-valid.html] + [e.style['grid-template'\] = "none" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "none / none" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "auto / auto" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "none / [a\] 0px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "none / [\] 0px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] 10px / auto" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] 10px / none" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[\] 10px [\] / [\] auto [\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\" 10px [\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[\] \\"a\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\" 10px [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" auto" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a a a\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" / 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" / 20%" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" / 5fr" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[\] \\"a\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [\] [\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] [b\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] \\"b\\"" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" / 0" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" 10px / 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" calc(100% - 10px) / calc(10px)" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] \\"b\\" 10px [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] [a\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] [\] \\"b\\" 10px" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" 10px [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "[a\] \\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" \\"a\\" [a\] \\"b\\" [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" [a\] \\"b\\" [a\] / 0" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" \\"a\\" [a\] [a\] \\"b\\" / auto" should set the property value] + expected: FAIL + + [e.style['grid-template'\] = "\\"a\\" auto [a\] \\"b\\" auto [b\] / 10px" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand.html.ini new file mode 100644 index 00000000000..6c167c77773 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/parsing/grid-template-shorthand.html.ini @@ -0,0 +1,72 @@ +[grid-template-shorthand.html] + [e.style['grid-template'\] = "none" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "none" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "none" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "none" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = "10px / 20%" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "10px / 20%" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "10px / 20%" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "10px / 20%" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "fit-content(calc(-0.5em + 10px)) / fit-content(calc(0.5em + 10px))" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = "[header-top\] \\"a a a\\" [header-bottom\] [main-top\] \\"b b b\\" 1fr [main-bottom\] / auto 1fr auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = " \\"a a a\\" \\"b b b\\" 1fr/ auto 1fr auto" should not set unrelated longhands] + expected: FAIL + + [e.style['grid-template'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-areas] + expected: FAIL + + [e.style['grid-template'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-columns] + expected: FAIL + + [e.style['grid-template'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should set grid-template-rows] + expected: FAIL + + [e.style['grid-template'\] = " [\] \\"a a a\\" [\] [\] \\"b b b\\" 1fr [\] / [\] auto 1fr [\] auto [\]" should not set unrelated longhands] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-flow-sparse-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-flow-sparse-001.html.ini new file mode 100644 index 00000000000..d61dcb9cec7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-flow-sparse-001.html.ini @@ -0,0 +1,24 @@ +[grid-auto-flow-sparse-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html.ini new file mode 100644 index 00000000000..f5fb14109a3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html.ini @@ -0,0 +1,36 @@ +[grid-auto-placement-implicit-tracks-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL + + [.grid 7] + expected: FAIL + + [.grid 8] + expected: FAIL + + [.grid 9] + expected: FAIL + + [.grid 10] + expected: FAIL + + [.grid 11] + expected: FAIL + + [.grid 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-grid-tracks-recompute-child-positions-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-grid-tracks-recompute-child-positions-001.html.ini new file mode 100644 index 00000000000..506371ad7ad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-grid-tracks-recompute-child-positions-001.html.ini @@ -0,0 +1,18 @@ +[grid-container-change-grid-tracks-recompute-child-positions-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL + + [.grid 5] + expected: FAIL + + [.grid 6] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-named-grid-recompute-child-positions-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-named-grid-recompute-child-positions-001.html.ini new file mode 100644 index 00000000000..9f7d8ce26f6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-container-change-named-grid-recompute-child-positions-001.html.ini @@ -0,0 +1,12 @@ +[grid-container-change-named-grid-recompute-child-positions-001.html] + [.grid 1] + expected: FAIL + + [.grid 2] + expected: FAIL + + [.grid 3] + expected: FAIL + + [.grid 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-grid-span.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-grid-span.html.ini new file mode 100644 index 00000000000..8c2854d38ee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-grid-span.html.ini @@ -0,0 +1,2 @@ +[grid-layout-grid-span.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines-shorthands.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines-shorthands.html.ini new file mode 100644 index 00000000000..4fdef1c5ec9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines-shorthands.html.ini @@ -0,0 +1,2 @@ +[grid-layout-lines-shorthands.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines.html.ini new file mode 100644 index 00000000000..996413eb08d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-lines.html.ini @@ -0,0 +1,2 @@ +[grid-layout-lines.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-placement-shorthands.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-placement-shorthands.html.ini new file mode 100644 index 00000000000..16f1dbe48a4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-layout-placement-shorthands.html.ini @@ -0,0 +1,2 @@ +[grid-layout-placement-shorthands.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-001.html.ini new file mode 100644 index 00000000000..45e4763e55b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-001.html.ini @@ -0,0 +1,2 @@ +[grid-placement-items-spanning-multiple-rows-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-002.html.ini new file mode 100644 index 00000000000..3a0055bf239 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-002.html.ini @@ -0,0 +1,2 @@ +[grid-placement-items-spanning-multiple-rows-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-001.html.ini new file mode 100644 index 00000000000..dec14955805 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-001.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-002.html.ini new file mode 100644 index 00000000000..b57d92fd5f9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-002.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-003.html.ini new file mode 100644 index 00000000000..ed32e5e31dd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-003.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-004.html.ini new file mode 100644 index 00000000000..feaf1d48957 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-004.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-005.html.ini new file mode 100644 index 00000000000..344c45abc10 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-005.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-006.html.ini new file mode 100644 index 00000000000..bfd761d9be8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-006.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-007.html.ini new file mode 100644 index 00000000000..e454b6f1d2e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-007.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-008.html.ini new file mode 100644 index 00000000000..846ad9ee38b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-008.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-009.html.ini new file mode 100644 index 00000000000..0c449181721 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/placement/grid-placement-using-named-grid-lines-009.html.ini @@ -0,0 +1,2 @@ +[grid-placement-using-named-grid-lines-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/relative-grandchild.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/relative-grandchild.html.ini new file mode 100644 index 00000000000..fffc849e09d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/relative-grandchild.html.ini @@ -0,0 +1,2 @@ +[relative-grandchild.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/stretch-grid-item-text-input-overflow.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/stretch-grid-item-text-input-overflow.html.ini new file mode 100644 index 00000000000..bd1c9aafaba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/stretch-grid-item-text-input-overflow.html.ini @@ -0,0 +1,2 @@ +[stretch-grid-item-text-input-overflow.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/abs-pos-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/abs-pos-002.html.ini new file mode 100644 index 00000000000..959f11477c2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/abs-pos-002.html.ini @@ -0,0 +1,2 @@ +[abs-pos-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/align-self-baseline-with-subgrid-mbp.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/align-self-baseline-with-subgrid-mbp.html.ini new file mode 100644 index 00000000000..1511cf803f7 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/align-self-baseline-with-subgrid-mbp.html.ini @@ -0,0 +1,6 @@ +[align-self-baseline-with-subgrid-mbp.html] + [.first-baseline 1] + expected: FAIL + + [.first-baseline 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/alignment-in-subgridded-axes-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/alignment-in-subgridded-axes-001.html.ini new file mode 100644 index 00000000000..d9dd19648b2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/alignment-in-subgridded-axes-001.html.ini @@ -0,0 +1,48 @@ +[alignment-in-subgridded-axes-001.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL + + [.item 13] + expected: FAIL + + [.item 14] + expected: FAIL + + [.item 15] + expected: FAIL + + [.item 16] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/auto-track-sizing-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/auto-track-sizing-004.html.ini new file mode 100644 index 00000000000..4d1e8824c17 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/auto-track-sizing-004.html.ini @@ -0,0 +1,2 @@ +[auto-track-sizing-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/baseline-001.html.ini new file mode 100644 index 00000000000..a190c9ea8ca --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/baseline-001.html.ini @@ -0,0 +1,2 @@ +[baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/contribution-size-flex-tracks-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/contribution-size-flex-tracks-001.html.ini new file mode 100644 index 00000000000..b3d040ee0f3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/contribution-size-flex-tracks-001.html.ini @@ -0,0 +1,2 @@ +[contribution-size-flex-tracks-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-001.html.ini new file mode 100644 index 00000000000..dae9fbcca9e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-001.html.ini @@ -0,0 +1,2 @@ +[dynamic-min-content-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-002.html.ini new file mode 100644 index 00000000000..8bf29439918 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-002.html.ini @@ -0,0 +1,2 @@ +[dynamic-min-content-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-003.html.ini new file mode 100644 index 00000000000..bdf1d7b53d5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/dynamic-min-content-003.html.ini @@ -0,0 +1,2 @@ +[dynamic-min-content-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-001.html.ini new file mode 100644 index 00000000000..a9e1adde17f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-001.html.ini @@ -0,0 +1,2 @@ +[grid-gap-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-002.html.ini new file mode 100644 index 00000000000..c695be260be --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-002.html.ini @@ -0,0 +1,2 @@ +[grid-gap-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-003.html.ini new file mode 100644 index 00000000000..d73834ff3ce --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-003.html.ini @@ -0,0 +1,2 @@ +[grid-gap-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-007.html.ini new file mode 100644 index 00000000000..99ddb99bf17 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-007.html.ini @@ -0,0 +1,2 @@ +[grid-gap-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-008.html.ini new file mode 100644 index 00000000000..cc9f58e7588 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-008.html.ini @@ -0,0 +1,2 @@ +[grid-gap-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-009.html.ini new file mode 100644 index 00000000000..7e301180a2b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-009.html.ini @@ -0,0 +1,2 @@ +[grid-gap-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-010.html.ini new file mode 100644 index 00000000000..99d60f1e6ee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-010.html.ini @@ -0,0 +1,2 @@ +[grid-gap-010.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-011.html.ini new file mode 100644 index 00000000000..93b521cda78 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-011.html.ini @@ -0,0 +1,2 @@ +[grid-gap-011.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-012.html.ini new file mode 100644 index 00000000000..1cd4ed1c1d2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-012.html.ini @@ -0,0 +1,2 @@ +[grid-gap-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-smaller-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-smaller-001.html.ini new file mode 100644 index 00000000000..817ac2b058e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-gap-smaller-001.html.ini @@ -0,0 +1,2 @@ +[grid-gap-smaller-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-computed-nogrid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-computed-nogrid.html.ini new file mode 100644 index 00000000000..c9a6277a897 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-computed-nogrid.html.ini @@ -0,0 +1,150 @@ +[grid-template-computed-nogrid.html] + [Property grid-template-columns value 'subgrid [\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [\] [b\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] [b\] [c\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b c d\] [e f\] [e f\] [g\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a b c\] [d\] [e f\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(auto-fill, [c\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a b\] repeat(auto-fill, [c\]) [g\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\]) [g h\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c d\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c d\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(auto-fill, [c d\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a b\] repeat(auto-fill, [c d\]) [g\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c d\]) [g h\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c d\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\] [d\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\] [d\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(auto-fill, [c\] [d\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a b\] repeat(auto-fill, [c\] [d\]) [g\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\] [d\]) [g h\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\] [d\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\] [d e\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [c\] [d e\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(auto-fill, [c\] [d e\]) [g\] [h i\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a b\] repeat(auto-fill, [c\] [d e\]) [g\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\] [d e\]) [g h\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b\] repeat(auto-fill, [c\] [d e\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(2, [c\] [d e\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(1, [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a\] [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [\] [a\] [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [\] [\] [\]) repeat(auto-fill, [\] [\] [\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(1, [a b\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a b\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(1, [a\] [b\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a\] [b\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(2, [b\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a\]) [b\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] repeat(2, [b\] [c d\]) [e\]'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a b\]) repeat(auto-fill, [c\] [d e\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(auto-fill, [a\] [b c\]) repeat(2, [d e\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid repeat(2, [a b\]) repeat(auto-fill, [c\] [d e\]) repeat(2, [f g\])'] + expected: FAIL + + [Property grid-template-columns value 'subgrid [a\] [b c\] repeat(2, [d e\]) [f\] [g h\] repeat(auto-fill, [i\] [j k\]) [l\] repeat(2, [m n\]) [o\]'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-valid.html.ini new file mode 100644 index 00000000000..c67a86c38fb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/grid-template-valid.html.ini @@ -0,0 +1,114 @@ +[grid-template-valid.html] + [e.style['grid-template-rows'\] = "subgrid" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] [b\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] [b\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] [b\] [\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [\] [\] [\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [\] [\] [\] [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid repeat(auto-fill, [a\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid repeat(auto-fill, [\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] repeat(auto-fill, [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] repeat(auto-fill, [b\]) [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [\] repeat(auto-fill, [\]) [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid repeat(2, [a\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid repeat(2, [a\] [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] repeat(2, [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] repeat(2, [b\]) [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [\] repeat(2, [\]) [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-rows'\] = "subgrid [a\] repeat(2, [b\]) repeat(auto-fill, [c\]) [d\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] [b\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] [b\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] [b\] [\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [\] [\] [\] [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [\] [\] [\] [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid repeat(auto-fill, [a\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid repeat(auto-fill, [\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] repeat(auto-fill, [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] repeat(auto-fill, [b\]) [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [\] repeat(auto-fill, [\]) [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid repeat(2, [a\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid repeat(2, [a\] [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] repeat(2, [b\])" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] repeat(2, [b\]) [c\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [\] repeat(2, [\]) [\]" should set the property value] + expected: FAIL + + [e.style['grid-template-columns'\] = "subgrid [a\] repeat(2, [b\]) repeat(auto-fill, [c\]) [d\]" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-formatting-context.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-formatting-context.html.ini new file mode 100644 index 00000000000..e249501437b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-formatting-context.html.ini @@ -0,0 +1,2 @@ +[independent-formatting-context.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-tracks-from-parent-grid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-tracks-from-parent-grid.html.ini new file mode 100644 index 00000000000..3797183cdbd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/independent-tracks-from-parent-grid.html.ini @@ -0,0 +1,2 @@ +[independent-tracks-from-parent-grid.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/item-percentage-height-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/item-percentage-height-001.html.ini new file mode 100644 index 00000000000..4da55e1573a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/item-percentage-height-001.html.ini @@ -0,0 +1,2 @@ +[item-percentage-height-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-001.html.ini new file mode 100644 index 00000000000..fbfa0be6562 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-001.html.ini @@ -0,0 +1,2 @@ +[line-names-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-004.html.ini new file mode 100644 index 00000000000..2096ce9ab65 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-004.html.ini @@ -0,0 +1,2 @@ +[line-names-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-005.html.ini new file mode 100644 index 00000000000..4becd791199 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-005.html.ini @@ -0,0 +1,2 @@ +[line-names-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-007.html.ini new file mode 100644 index 00000000000..f1e78c47b35 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-007.html.ini @@ -0,0 +1,2 @@ +[line-names-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-013.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-013.html.ini new file mode 100644 index 00000000000..632e5331c4d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/line-names-013.html.ini @@ -0,0 +1,2 @@ +[line-names-013.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/overflow-hidden-does-not-prohibit-subgrid.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/overflow-hidden-does-not-prohibit-subgrid.html.ini new file mode 100644 index 00000000000..8fdfd06381a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/overflow-hidden-does-not-prohibit-subgrid.html.ini @@ -0,0 +1,2 @@ +[overflow-hidden-does-not-prohibit-subgrid.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/parent-repeat-auto-fit-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/parent-repeat-auto-fit-001.html.ini new file mode 100644 index 00000000000..e133dc715ee --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/parent-repeat-auto-fit-001.html.ini @@ -0,0 +1,2 @@ +[parent-repeat-auto-fit-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/percentage-track-sizing.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/percentage-track-sizing.html.ini new file mode 100644 index 00000000000..2aed68d4345 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/percentage-track-sizing.html.ini @@ -0,0 +1,2 @@ +[percentage-track-sizing.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/placement-invalidation-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/placement-invalidation-001.html.ini new file mode 100644 index 00000000000..63d7b70f25e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/placement-invalidation-001.html.ini @@ -0,0 +1,3 @@ +[placement-invalidation-001.html] + [#item 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-001.html.ini new file mode 100644 index 00000000000..e93046279bc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-001.html.ini @@ -0,0 +1,2 @@ +[repeat-auto-fill-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-006.html.ini new file mode 100644 index 00000000000..4724a4c5ba9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-006.html.ini @@ -0,0 +1,2 @@ +[repeat-auto-fill-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-008.html.ini new file mode 100644 index 00000000000..53b916095cf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/repeat-auto-fill-008.html.ini @@ -0,0 +1,2 @@ +[repeat-auto-fill-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-001.html.ini new file mode 100644 index 00000000000..94ccd377bb0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-001.html.ini @@ -0,0 +1,2 @@ +[scrollbar-gutter-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-002.html.ini new file mode 100644 index 00000000000..3c94744dc5c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/scrollbar-gutter-002.html.ini @@ -0,0 +1,2 @@ +[scrollbar-gutter-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-001.html.ini new file mode 100644 index 00000000000..e5d7ff25cae --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-001.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-002.html.ini new file mode 100644 index 00000000000..f6b5d72d825 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-002.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-003.html.ini new file mode 100644 index 00000000000..da9b0606ec4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-003.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-004.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-004.html.ini new file mode 100644 index 00000000000..225744c4dec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-004.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-004.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-005.html.ini new file mode 100644 index 00000000000..81d207dd168 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-005.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-006.html.ini new file mode 100644 index 00000000000..17642ff9d50 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-006.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-007.html.ini new file mode 100644 index 00000000000..26909c36e7d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-007.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-007.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-008.html.ini new file mode 100644 index 00000000000..74c20910c3a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-008.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-008.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-009.html.ini new file mode 100644 index 00000000000..aba31a3b4de --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/standalone-axis-size-009.html.ini @@ -0,0 +1,2 @@ +[standalone-axis-size-009.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-001.html.ini new file mode 100644 index 00000000000..f4293eb2d8a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-001.html.ini @@ -0,0 +1,2 @@ +[subgrid-baseline-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-002.html.ini new file mode 100644 index 00000000000..e93ab475c91 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-002.html.ini @@ -0,0 +1,2 @@ +[subgrid-baseline-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-005.html.ini new file mode 100644 index 00000000000..fecd8ab0269 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-005.html.ini @@ -0,0 +1,36 @@ +[subgrid-baseline-005.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-006.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-006.html.ini new file mode 100644 index 00000000000..adfaf6ceeb2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-006.html.ini @@ -0,0 +1,36 @@ +[subgrid-baseline-006.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-007.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-007.html.ini new file mode 100644 index 00000000000..c361d75dead --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-007.html.ini @@ -0,0 +1,36 @@ +[subgrid-baseline-007.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-008.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-008.html.ini new file mode 100644 index 00000000000..d10e03fc409 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-008.html.ini @@ -0,0 +1,36 @@ +[subgrid-baseline-008.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-009.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-009.html.ini new file mode 100644 index 00000000000..ba9a6f1f9dc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-009.html.ini @@ -0,0 +1,36 @@ +[subgrid-baseline-009.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL + + [.item 3] + expected: FAIL + + [.item 4] + expected: FAIL + + [.item 5] + expected: FAIL + + [.item 6] + expected: FAIL + + [.item 7] + expected: FAIL + + [.item 8] + expected: FAIL + + [.item 9] + expected: FAIL + + [.item 10] + expected: FAIL + + [.item 11] + expected: FAIL + + [.item 12] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-010.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-010.html.ini new file mode 100644 index 00000000000..4b30b9d2561 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-010.html.ini @@ -0,0 +1,6 @@ +[subgrid-baseline-010.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-011.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-011.html.ini new file mode 100644 index 00000000000..f2255900f31 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-011.html.ini @@ -0,0 +1,6 @@ +[subgrid-baseline-011.html] + [.item 1] + expected: FAIL + + [.item 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-012.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-012.html.ini new file mode 100644 index 00000000000..59602ca238f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-baseline-012.html.ini @@ -0,0 +1,2 @@ +[subgrid-baseline-012.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-button.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-button.html.ini new file mode 100644 index 00000000000..a09197e1878 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-button.html.ini @@ -0,0 +1,2 @@ +[subgrid-button.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-item-block-size-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-item-block-size-001.html.ini new file mode 100644 index 00000000000..a31d6682f10 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-item-block-size-001.html.ini @@ -0,0 +1,2 @@ +[subgrid-item-block-size-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-no-items-on-edges-002.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-no-items-on-edges-002.html.ini new file mode 100644 index 00000000000..db26509d989 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-no-items-on-edges-002.html.ini @@ -0,0 +1,2 @@ +[subgrid-no-items-on-edges-002.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-stretch.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-stretch.html.ini new file mode 100644 index 00000000000..489a902dc48 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/subgrid-stretch.html.ini @@ -0,0 +1,2 @@ +[subgrid-stretch.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-001.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-001.html.ini new file mode 100644 index 00000000000..a1eb3461cd3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-001.html.ini @@ -0,0 +1,2 @@ +[writing-directions-001.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-003.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-003.html.ini new file mode 100644 index 00000000000..5c4b4b5a0e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/subgrid/writing-directions-003.html.ini @@ -0,0 +1,2 @@ +[writing-directions-003.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/table-grid-item-005.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/table-grid-item-005.html.ini new file mode 100644 index 00000000000..9c914be7204 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/table-grid-item-005.html.ini @@ -0,0 +1,3 @@ +[table-grid-item-005.html] + [<table> grid items should fill their grid area] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-grid/whitespace-reattach.html.ini b/tests/wpt/meta-legacy-layout/css/css-grid/whitespace-reattach.html.ini new file mode 100644 index 00000000000..c3f962da8b2 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-grid/whitespace-reattach.html.ini @@ -0,0 +1,2 @@ +[whitespace-reattach.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-overflow/overflow-video.html.ini b/tests/wpt/meta-legacy-layout/css/css-overflow/overflow-video.html.ini deleted file mode 100644 index 1d0a9d754d6..00000000000 --- a/tests/wpt/meta-legacy-layout/css/css-overflow/overflow-video.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[overflow-video.html] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-position/position-absolute-replaced-minmax.html.ini b/tests/wpt/meta-legacy-layout/css/css-position/position-absolute-replaced-minmax.html.ini index 1d18cd98633..2a1431da4a4 100644 --- a/tests/wpt/meta-legacy-layout/css/css-position/position-absolute-replaced-minmax.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-position/position-absolute-replaced-minmax.html.ini @@ -1,58 +1,57 @@ [position-absolute-replaced-minmax.html] - expected: TIMEOUT [minmax replaced IMG svg 23] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 24] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 25] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 26] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 27] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 28] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 29] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 30] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 31] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 32] - expected: NOTRUN + expected: FAIL [minmax replaced IMG svg 33] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 34] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 35] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 36] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 37] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 38] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 39] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 40] - expected: NOTRUN + expected: FAIL [minmax replaced IMG 41] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini new file mode 100644 index 00000000000..0303c3c39d8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini @@ -0,0 +1,18 @@ +[the-select-arrow-pseudo-element.tentative.html] + ["::select-arrow" should be a valid selector] + expected: FAIL + + ["*::select-arrow" should be a valid selector] + expected: FAIL + + ["foo.bar[baz\]::select-arrow" should be a valid selector] + expected: FAIL + + ["::select-arrow::marker" should be a valid selector] + expected: FAIL + + ["::slotted(*)::select-arrow" should be a valid selector] + expected: FAIL + + ["::part(foo)::select-arrow" should be a valid selector] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-035.html.ini b/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-035.html.ini new file mode 100644 index 00000000000..ae3371c1132 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-035.html.ini @@ -0,0 +1,2 @@ +[replaced-element-035.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-043.html.ini b/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-043.html.ini new file mode 100644 index 00000000000..fc3cf39803e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-sizing/aspect-ratio/replaced-element-043.html.ini @@ -0,0 +1,288 @@ +[replaced-element-043.html] + [canvas 2] + expected: FAIL + + [canvas 3] + expected: FAIL + + [canvas 4] + expected: FAIL + + [canvas 5] + expected: FAIL + + [canvas 6] + expected: FAIL + + [canvas 8] + expected: FAIL + + [canvas 9] + expected: FAIL + + [canvas 10] + expected: FAIL + + [canvas 11] + expected: FAIL + + [canvas 12] + expected: FAIL + + [canvas 15] + expected: FAIL + + [canvas 16] + expected: FAIL + + [canvas 17] + expected: FAIL + + [canvas 18] + expected: FAIL + + [canvas 21] + expected: FAIL + + [canvas 22] + expected: FAIL + + [canvas 23] + expected: FAIL + + [canvas 24] + expected: FAIL + + [canvas 26] + expected: FAIL + + [canvas 27] + expected: FAIL + + [canvas 32] + expected: FAIL + + [canvas 33] + expected: FAIL + + [canvas 39] + expected: FAIL + + [canvas 40] + expected: FAIL + + [canvas 41] + expected: FAIL + + [canvas 42] + expected: FAIL + + [canvas 45] + expected: FAIL + + [canvas 46] + expected: FAIL + + [canvas 47] + expected: FAIL + + [canvas 48] + expected: FAIL + + [canvas 49] + expected: FAIL + + [canvas 50] + expected: FAIL + + [canvas 51] + expected: FAIL + + [canvas 52] + expected: FAIL + + [canvas 53] + expected: FAIL + + [canvas 54] + expected: FAIL + + [canvas 55] + expected: FAIL + + [canvas 56] + expected: FAIL + + [canvas 57] + expected: FAIL + + [canvas 58] + expected: FAIL + + [canvas 59] + expected: FAIL + + [canvas 60] + expected: FAIL + + [canvas 61] + expected: FAIL + + [canvas 62] + expected: FAIL + + [canvas 63] + expected: FAIL + + [canvas 64] + expected: FAIL + + [canvas 65] + expected: FAIL + + [canvas 66] + expected: FAIL + + [canvas 67] + expected: FAIL + + [canvas 68] + expected: FAIL + + [canvas 69] + expected: FAIL + + [canvas 70] + expected: FAIL + + [canvas 71] + expected: FAIL + + [canvas 72] + expected: FAIL + + [canvas 74] + expected: FAIL + + [canvas 75] + expected: FAIL + + [canvas 81] + expected: FAIL + + [canvas 89] + expected: FAIL + + [canvas 90] + expected: FAIL + + [canvas 95] + expected: FAIL + + [canvas 96] + expected: FAIL + + [canvas 102] + expected: FAIL + + [canvas 115] + expected: FAIL + + [canvas 116] + expected: FAIL + + [canvas 121] + expected: FAIL + + [canvas 122] + expected: FAIL + + [canvas 123] + expected: FAIL + + [canvas 124] + expected: FAIL + + [canvas 129] + expected: FAIL + + [canvas 130] + expected: FAIL + + [canvas 131] + expected: FAIL + + [canvas 132] + expected: FAIL + + [canvas 135] + expected: FAIL + + [canvas 136] + expected: FAIL + + [canvas 137] + expected: FAIL + + [canvas 138] + expected: FAIL + + [canvas 141] + expected: FAIL + + [canvas 142] + expected: FAIL + + [canvas 143] + expected: FAIL + + [canvas 144] + expected: FAIL + + [canvas 152] + expected: FAIL + + [canvas 153] + expected: FAIL + + [canvas 154] + expected: FAIL + + [canvas 155] + expected: FAIL + + [canvas 156] + expected: FAIL + + [canvas 158] + expected: FAIL + + [canvas 159] + expected: FAIL + + [canvas 160] + expected: FAIL + + [canvas 161] + expected: FAIL + + [canvas 162] + expected: FAIL + + [canvas 164] + expected: FAIL + + [canvas 165] + expected: FAIL + + [canvas 170] + expected: FAIL + + [canvas 171] + expected: FAIL + + [canvas 176] + expected: FAIL + + [canvas 177] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-sizing/intrinsic-size-fallback-video.html.ini b/tests/wpt/meta-legacy-layout/css/css-sizing/intrinsic-size-fallback-video.html.ini new file mode 100644 index 00000000000..292fcbd5ebf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-sizing/intrinsic-size-fallback-video.html.ini @@ -0,0 +1,12 @@ +[intrinsic-size-fallback-video.html] + [.wrapper 1] + expected: FAIL + + [.wrapper 2] + expected: FAIL + + [.wrapper 3] + expected: FAIL + + [.wrapper 4] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/auto-margins-1.html.ini b/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/auto-margins-1.html.ini new file mode 100644 index 00000000000..5030c8126ba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/auto-margins-1.html.ini @@ -0,0 +1,3 @@ +[auto-margins-1.html] + [[data-expected-width\] 2] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/indefinite-4.html.ini b/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/indefinite-4.html.ini new file mode 100644 index 00000000000..d0bd94e4cbe --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-sizing/stretch/indefinite-4.html.ini @@ -0,0 +1,3 @@ +[indefinite-4.html] + [[data-expected-client-height\] 1] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html.ini b/tests/wpt/meta-legacy-layout/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html.ini new file mode 100644 index 00000000000..d77d728cf5b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html.ini @@ -0,0 +1,2 @@ +[text-shadow-emoji-transparent.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini b/tests/wpt/meta-legacy-layout/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini new file mode 100644 index 00000000000..d981ffe23af --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini @@ -0,0 +1,2 @@ +[segment-break-transformation-ignorable-1.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-values/attr-IACVT.html.ini b/tests/wpt/meta-legacy-layout/css/css-values/attr-IACVT.html.ini new file mode 100644 index 00000000000..7d7e1ecd848 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-values/attr-IACVT.html.ini @@ -0,0 +1,3 @@ +[attr-IACVT.html] + [CSS Values Test: attr() IACVT] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-values/attr-all-types.html.ini b/tests/wpt/meta-legacy-layout/css/css-values/attr-all-types.html.ini index 2239863f502..4a56492d36e 100644 --- a/tests/wpt/meta-legacy-layout/css/css-values/attr-all-types.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-values/attr-all-types.html.ini @@ -38,9 +38,6 @@ [CSS Values and Units Test: attr 13] expected: FAIL - [CSS Values and Units Test: attr 14] - expected: FAIL - [CSS Values and Units Test: attr 18] expected: FAIL @@ -59,57 +56,6 @@ [CSS Values and Units Test: attr 38] expected: FAIL - [CSS Values and Units Test: attr 39] - expected: FAIL - - [CSS Values and Units Test: attr 40] - expected: FAIL - - [CSS Values and Units Test: attr 41] - expected: FAIL - - [CSS Values and Units Test: attr 42] - expected: FAIL - - [CSS Values and Units Test: attr 43] - expected: FAIL - - [CSS Values and Units Test: attr 44] - expected: FAIL - - [CSS Values and Units Test: attr 45] - expected: FAIL - - [CSS Values and Units Test: attr 46] - expected: FAIL - - [CSS Values and Units Test: attr 47] - expected: FAIL - - [CSS Values and Units Test: attr 48] - expected: FAIL - - [CSS Values and Units Test: attr 49] - expected: FAIL - - [CSS Values and Units Test: attr 50] - expected: FAIL - - [CSS Values and Units Test: attr 51] - expected: FAIL - - [CSS Values and Units Test: attr 52] - expected: FAIL - - [CSS Values and Units Test: attr 53] - expected: FAIL - - [CSS Values and Units Test: attr 54] - expected: FAIL - - [CSS Values and Units Test: attr 55] - expected: FAIL - [CSS Values and Units Test: attr 12] expected: FAIL @@ -122,21 +68,6 @@ [CSS Values and Units Test: attr 24] expected: FAIL - [CSS Values and Units Test: attr 56] - expected: FAIL - - [CSS Values and Units Test: attr 57] - expected: FAIL - - [CSS Values and Units Test: attr 58] - expected: FAIL - - [CSS Values and Units Test: attr 59] - expected: FAIL - - [CSS Values and Units Test: attr 60] - expected: FAIL - [CSS Values and Units Test: attr 15] expected: FAIL @@ -155,35 +86,32 @@ [CSS Values and Units Test: attr 27] expected: FAIL - [CSS Values and Units Test: attr 31] - expected: FAIL - [CSS Values and Units Test: attr 32] expected: FAIL - [CSS Values and Units Test: attr 61] + [CSS Values and Units Test: attr 74] expected: FAIL - [CSS Values and Units Test: attr 62] + [CSS Values and Units Test: attr 75] expected: FAIL - [CSS Values and Units Test: attr 63] + [CSS Values and Units Test: attr 76] expected: FAIL - [CSS Values and Units Test: attr 74] + [CSS Values and Units Test: attr 77] expected: FAIL - [CSS Values and Units Test: attr 75] + [CSS Values and Units Test: attr 22] expected: FAIL - [CSS Values and Units Test: attr 64] + [CSS Values and Units Test: attr 23] expected: FAIL - [CSS Values and Units Test: attr 65] + [CSS Values and Units Test: attr 30] expected: FAIL - [CSS Values and Units Test: attr 76] + [CSS Values and Units Test: attr 34] expected: FAIL - [CSS Values and Units Test: attr 77] + [CSS Values and Units Test: attr 35] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-values/attr-px-invalid-cast.html.ini b/tests/wpt/meta-legacy-layout/css/css-values/attr-px-invalid-cast.html.ini deleted file mode 100644 index 8b08afba29a..00000000000 --- a/tests/wpt/meta-legacy-layout/css/css-values/attr-px-invalid-cast.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[attr-px-invalid-cast.html] - type: reftest - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-values/attr-px-valid.html.ini b/tests/wpt/meta-legacy-layout/css/css-values/attr-px-valid.html.ini deleted file mode 100644 index 64c11e5cead..00000000000 --- a/tests/wpt/meta-legacy-layout/css/css-values/attr-px-valid.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[attr-px-valid.html] - type: reftest - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-values/signs-abs-computed.html.ini b/tests/wpt/meta-legacy-layout/css/css-values/signs-abs-computed.html.ini index e2069e297af..ece49b5a44a 100644 --- a/tests/wpt/meta-legacy-layout/css/css-values/signs-abs-computed.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-values/signs-abs-computed.html.ini @@ -136,3 +136,66 @@ [sign(10px - 2em) should be used-value-equivalent to -1; fontSize=10px] expected: FAIL + + [calc(2.5 - sign(41px - 2em) / 2) should be used-value-equivalent to 2] + expected: FAIL + + [calc(2.5 - sign(40px - 2em) / 2) should be used-value-equivalent to 2.5] + expected: FAIL + + [calc(2.5 - sign(39px - 2em) / 2) should be used-value-equivalent to 3] + expected: FAIL + + [calc(3 + sign(42px - 2em)) should be used-value-equivalent to 4] + expected: FAIL + + [calc(3 + sign(40px - 2em)) should be used-value-equivalent to 3] + expected: FAIL + + [calc(3 + sign(38px - 2em)) should be used-value-equivalent to 2] + expected: FAIL + + [calc(90deg + 30deg * sign(42px - 2em)) should be used-value-equivalent to 120deg] + expected: FAIL + + [calc(90deg + 30deg * sign(40px - 2em)) should be used-value-equivalent to 90deg] + expected: FAIL + + [calc(90deg + 30deg * sign(38px - 2em)) should be used-value-equivalent to 60deg] + expected: FAIL + + [calc(5s + 15s * sign(42px - 2em)) should be used-value-equivalent to 20s] + expected: FAIL + + [calc(5s + 15s * sign(40px - 2em)) should be used-value-equivalent to 5s] + expected: FAIL + + [calc(5s + 15s * sign(38px - 2em)) should be used-value-equivalent to -10s] + expected: FAIL + + [calc(100dpi + 20dpi * sign(42px - 2em)) should be used-value-equivalent to 120dpi] + expected: FAIL + + [calc(100dpi + 20dpi * sign(40px - 2em)) should be used-value-equivalent to 100dpi] + expected: FAIL + + [calc(100dpi + 20dpi * sign(38px - 2em)) should be used-value-equivalent to 80dpi] + expected: FAIL + + [calc(3fr + 1fr * sign(42px - 2em)) should be used-value-equivalent to 4fr] + expected: FAIL + + [calc(3fr + 1fr * sign(40px - 2em)) should be used-value-equivalent to 3fr] + expected: FAIL + + [calc(3fr + 1fr * sign(38px - 2em)) should be used-value-equivalent to 2fr] + expected: FAIL + + [calc(2.5 - sign(33px - 2rem) / 2) should be used-value-equivalent to 2] + expected: FAIL + + [calc(2.5 - sign(32px - 2rem) / 2) should be used-value-equivalent to 2.5] + expected: FAIL + + [calc(2.5 - sign(31px - 2rem) / 2) should be used-value-equivalent to 3] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/cssom-view/DOMRectList.html.ini b/tests/wpt/meta-legacy-layout/css/cssom-view/DOMRectList.html.ini index 5d7bd71bd9c..7994572555c 100644 --- a/tests/wpt/meta-legacy-layout/css/cssom-view/DOMRectList.html.ini +++ b/tests/wpt/meta-legacy-layout/css/cssom-view/DOMRectList.html.ini @@ -1,7 +1,3 @@ [DOMRectList.html] - [Element getClientRects()] - expected: FAIL - [Range getClientRects()] expected: FAIL - diff --git a/tests/wpt/meta-legacy-layout/css/geometry/DOMRectList.html.ini b/tests/wpt/meta-legacy-layout/css/geometry/DOMRectList.html.ini index 7ea5f0b6856..d60b366db0d 100644 --- a/tests/wpt/meta-legacy-layout/css/geometry/DOMRectList.html.ini +++ b/tests/wpt/meta-legacy-layout/css/geometry/DOMRectList.html.ini @@ -1,12 +1,3 @@ [DOMRectList.html] - [DOMRectList item()] - expected: FAIL - [DOMRectList is not [NoInterfaceObject\]] expected: FAIL - - [DOMRectList is not [LegacyArrayClass\]] - expected: FAIL - - [DOMRectList is exposed] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/geometry/idlharness.any.js.ini b/tests/wpt/meta-legacy-layout/css/geometry/idlharness.any.js.ini index fe0192281ed..8a968b4eb6e 100644 --- a/tests/wpt/meta-legacy-layout/css/geometry/idlharness.any.js.ini +++ b/tests/wpt/meta-legacy-layout/css/geometry/idlharness.any.js.ini @@ -19,27 +19,12 @@ [DOMPointReadOnly interface: calling matrixTransform(optional DOMMatrixInit) on new DOMPoint() with too few arguments must throw TypeError] expected: FAIL - [DOMRectList interface: existence and properties of interface prototype object's "constructor" property] - expected: FAIL - - [DOMRectList interface: existence and properties of interface prototype object] - expected: FAIL - [DOMPointReadOnly interface: operation matrixTransform(optional DOMMatrixInit)] expected: FAIL [DOMRectList interface: [object DOMRect\] must inherit property "length" with the proper type] expected: FAIL - [DOMRectList interface: operation item(unsigned long)] - expected: FAIL - - [DOMRectList interface: existence and properties of interface object] - expected: FAIL - - [DOMRectList interface object name] - expected: FAIL - [DOMRectList interface: [object DOMRect\] must inherit property "item(unsigned long)" with the proper type] expected: FAIL @@ -52,9 +37,6 @@ [DOMPoint interface: legacy window alias] expected: FAIL - [DOMRectList interface object length] - expected: FAIL - [DOMMatrix interface: calling setMatrixValue(DOMString) on new DOMMatrix() with too few arguments must throw TypeError] expected: FAIL @@ -73,14 +55,8 @@ [DOMPointReadOnly interface: calling matrixTransform(optional DOMMatrixInit) on new DOMPointReadOnly() with too few arguments must throw TypeError] expected: FAIL - [DOMRectList interface: attribute length] - expected: FAIL - [DOMMatrix interface: legacy window alias] expected: FAIL [Stringification of [object DOMRect\]] expected: FAIL - - [DOMRectList interface: existence and properties of interface prototype object's @@unscopables property] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..d1cd1865181 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-always-matches-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..a22a798704c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-always-matches-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..27ecadf65ec --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..254d5774e11 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..ab06ad7b0cc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..75d4f82effe --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/custom-elements/ElementInternals-accessibility.tentative.html.ini b/tests/wpt/meta-legacy-layout/custom-elements/ElementInternals-accessibility.tentative.html.ini new file mode 100644 index 00000000000..e888efbcc55 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/custom-elements/ElementInternals-accessibility.tentative.html.ini @@ -0,0 +1,9 @@ +[ElementInternals-accessibility.tentative.html] + [ariaColIndexText is defined in ElementInternals] + expected: FAIL + + [ariaDescription is defined in ElementInternals] + expected: FAIL + + [ariaRowIndexText is defined in ElementInternals] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/custom-elements/reactions/customized-builtins/HTMLMediaElement.html.ini b/tests/wpt/meta-legacy-layout/custom-elements/reactions/customized-builtins/HTMLMediaElement.html.ini new file mode 100644 index 00000000000..4456e76a8d1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/custom-elements/reactions/customized-builtins/HTMLMediaElement.html.ini @@ -0,0 +1,2 @@ +[HTMLMediaElement.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/dom/abort/AbortSignal.any.js.ini b/tests/wpt/meta-legacy-layout/dom/abort/AbortSignal.any.js.ini index 477da6cc050..5c57b72c1c3 100644 --- a/tests/wpt/meta-legacy-layout/dom/abort/AbortSignal.any.js.ini +++ b/tests/wpt/meta-legacy-layout/dom/abort/AbortSignal.any.js.ini @@ -30,3 +30,7 @@ [AbortSignal timeouts fire in order] expected: FAIL + + +[AbortSignal.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/dom/abort/event.any.js.ini b/tests/wpt/meta-legacy-layout/dom/abort/event.any.js.ini index d232779c742..0150f91cdc7 100644 --- a/tests/wpt/meta-legacy-layout/dom/abort/event.any.js.ini +++ b/tests/wpt/meta-legacy-layout/dom/abort/event.any.js.ini @@ -104,3 +104,7 @@ [AbortController.signal.reason returns the same DOMException] expected: FAIL + + +[event.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/dom/abort/timeout-shadowrealm.any.js.ini b/tests/wpt/meta-legacy-layout/dom/abort/timeout-shadowrealm.any.js.ini new file mode 100644 index 00000000000..2a8e04706a9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/dom/abort/timeout-shadowrealm.any.js.ini @@ -0,0 +1,2 @@ +[timeout-shadowrealm.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/dom/abort/timeout.any.js.ini b/tests/wpt/meta-legacy-layout/dom/abort/timeout.any.js.ini new file mode 100644 index 00000000000..624b6a502c3 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/dom/abort/timeout.any.js.ini @@ -0,0 +1,20 @@ +[timeout.any.html] + [AbortSignal.timeout() returns a non-aborted signal] + expected: FAIL + + [Signal returned by AbortSignal.timeout() times out] + expected: FAIL + + [AbortSignal timeouts fire in order] + expected: FAIL + + +[timeout.any.worker.html] + [AbortSignal.timeout() returns a non-aborted signal] + expected: FAIL + + [Signal returned by AbortSignal.timeout() times out] + expected: FAIL + + [AbortSignal timeouts fire in order] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/dom/nodes/moveBefore/tentative/focus-within.html.ini b/tests/wpt/meta-legacy-layout/dom/nodes/moveBefore/tentative/focus-within.html.ini new file mode 100644 index 00000000000..e7448213aa1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/dom/nodes/moveBefore/tentative/focus-within.html.ini @@ -0,0 +1,15 @@ +[focus-within.html] + [focus-within should be updated when reparenting focused element directly] + expected: FAIL + + [focus-within should be updated when reparenting an element that has focus within] + expected: FAIL + + [focus-within should remain the same when moving to the same parent] + expected: FAIL + + [:focus-within should be eventually up to date when moving to an inert subtree] + expected: FAIL + + [:focus-within should be eventually up to date when moving to a subtree that would become inert via style] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini b/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini index f2eb0d19401..4a44664564d 100644 --- a/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini +++ b/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini @@ -46,6 +46,3 @@ [sec-fetch-dest] expected: FAIL - - [sec-fetch-user] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/known-mime-type.sub.any.js.ini b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/known-mime-type.sub.any.js.ini index cae3ce43d64..70b6d37d61f 100644 --- a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/known-mime-type.sub.any.js.ini +++ b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/known-mime-type.sub.any.js.ini @@ -1,5 +1,5 @@ [known-mime-type.sub.any.html] - expected: ERROR + expected: CRASH [ORB should block opaque font/ttf] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/nosniff.sub.any.js.ini b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/nosniff.sub.any.js.ini index a38b187f919..70265456b06 100644 --- a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/nosniff.sub.any.js.ini +++ b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/nosniff.sub.any.js.ini @@ -1,5 +1,5 @@ [nosniff.sub.any.html] - expected: ERROR + expected: CRASH [ORB should block opaque text/plain with nosniff] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/status.sub.any.js.ini b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/status.sub.any.js.ini index c0940d7ac48..be205a8852c 100644 --- a/tests/wpt/meta-legacy-layout/fetch/orb/tentative/status.sub.any.js.ini +++ b/tests/wpt/meta-legacy-layout/fetch/orb/tentative/status.sub.any.js.ini @@ -13,7 +13,7 @@ [status.sub.any.html] - expected: ERROR + expected: CRASH [ORB should block opaque-response-blocklisted MIME type with status 206] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/range/general.window.js.ini b/tests/wpt/meta-legacy-layout/fetch/range/general.window.js.ini index 95069accc51..fc1c44e2e69 100644 --- a/tests/wpt/meta-legacy-layout/fetch/range/general.window.js.ini +++ b/tests/wpt/meta-legacy-layout/fetch/range/general.window.js.ini @@ -1,4 +1,5 @@ [general.window.html] + expected: CRASH [Untitled] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/media.html.ini b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/media.html.ini index 320b53d711f..bbe45433d58 100644 --- a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/media.html.ini +++ b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/media.html.ini @@ -1,4 +1,5 @@ [media.html] + expected: CRASH [Should not load audio with dangling markup in URL] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fullscreen/crashtests/chrome-1312699.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/crashtests/chrome-1312699.html.ini deleted file mode 100644 index f1efc6d3c4c..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/crashtests/chrome-1312699.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[chrome-1312699.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/fullscreen/crashtests/content-visibility-crash.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/crashtests/content-visibility-crash.html.ini deleted file mode 100644 index 03718ff93c2..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/crashtests/content-visibility-crash.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[content-visibility-crash.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-iframe.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-iframe.html.ini deleted file mode 100644 index 70d926570da..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-iframe.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-iframe.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-inherit.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-inherit.html.ini deleted file mode 100644 index 9de3b56d1e9..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-inherit.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-inherit.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-object.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-object.html.ini deleted file mode 100644 index 46e7b6f55cd..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/rendering/backdrop-object.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-object.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/fullscreen/rendering/fullscreen-root-fills-page.html.ini b/tests/wpt/meta-legacy-layout/fullscreen/rendering/fullscreen-root-fills-page.html.ini deleted file mode 100644 index cf9995f8551..00000000000 --- a/tests/wpt/meta-legacy-layout/fullscreen/rendering/fullscreen-root-fills-page.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[fullscreen-root-fills-page.html] - expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-window-open.html.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-window-open.html.ini index 5aef7ce66ce..324db3d9b35 100644 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-window-open.html.ini +++ b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-window-open.html.ini @@ -10,6 +10,3 @@ [load event does not fire on window.open('about:blank?foo')] expected: FAIL - - [load event does not fire on window.open('about:blank')] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin.window.js.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin.window.js.ini deleted file mode 100644 index 7dc346632a4..00000000000 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin.window.js.ini +++ /dev/null @@ -1,3 +0,0 @@ -[navigation-unload-same-origin.window.html] - [Same-origin navigation started from unload handler must be ignored] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini deleted file mode 100644 index 60a4fa51f8a..00000000000 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[a-click.html] - [aElement.click() before the load event must NOT replace] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini new file mode 100644 index 00000000000..1f345b780e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini new file mode 100644 index 00000000000..1f345b780e6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini new file mode 100644 index 00000000000..a691585df81 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html] + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml.xhtml.ini b/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml.xhtml.ini new file mode 100644 index 00000000000..2ecca02983f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml.xhtml.ini @@ -0,0 +1,2 @@ +[document.getElementsByName-newelements-xhtml.xhtml] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.html.ini b/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.html.ini new file mode 100644 index 00000000000..4379437d183 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements.html.ini @@ -0,0 +1,2 @@ +[document.getElementsByName-newelements.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/dom/elements/the-innertext-and-outertext-properties/getter.html.ini b/tests/wpt/meta-legacy-layout/html/dom/elements/the-innertext-and-outertext-properties/getter.html.ini index 6d5cdbdeea1..17d104192dc 100644 --- a/tests/wpt/meta-legacy-layout/html/dom/elements/the-innertext-and-outertext-properties/getter.html.ini +++ b/tests/wpt/meta-legacy-layout/html/dom/elements/the-innertext-and-outertext-properties/getter.html.ini @@ -1,4 +1,5 @@ [getter.html] + expected: CRASH [Trailing whitespace before hard line break removed ("<div>abc <br>def")] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/bidi-rendering/unicode-bidi-ua-rules.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/bidi-rendering/unicode-bidi-ua-rules.html.ini index 4349d4389f5..aae098c23ed 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/bidi-rendering/unicode-bidi-ua-rules.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/bidi-rendering/unicode-bidi-ua-rules.html.ini @@ -1,4 +1,5 @@ [unicode-bidi-ua-rules.html] + expected: CRASH [UA stylesheet rule for unicode-bidi, for <search>] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/dimension-attributes.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/dimension-attributes.html.ini index 37a4151ecbd..0b3d8c9fd7b 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/dimension-attributes.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/dimension-attributes.html.ini @@ -2978,120 +2978,6 @@ [<marquee height="0px"> mapping to <marquee> height property] expected: FAIL - [<video width="200"> mapping to <video> width property] - expected: FAIL - - [<video width="1007"> mapping to <video> width property] - expected: FAIL - - [<video width=" 00523 "> mapping to <video> width property] - expected: FAIL - - [<video width="200.25"> mapping to <video> width property] - expected: FAIL - - [<video width="200.7"> mapping to <video> width property] - expected: FAIL - - [<video width="200."> mapping to <video> width property] - expected: FAIL - - [<video width="200in"> mapping to <video> width property] - expected: FAIL - - [<video width="200.25in"> mapping to <video> width property] - expected: FAIL - - [<video width="200 %"> mapping to <video> width property] - expected: FAIL - - [<video width="200 abc"> mapping to <video> width property] - expected: FAIL - - [<video width="200%"> mapping to <video> width property] - expected: FAIL - - [<video width="200%abc"> mapping to <video> width property] - expected: FAIL - - [<video width="200.25%"> mapping to <video> width property] - expected: FAIL - - [<video width="200.%"> mapping to <video> width property] - expected: FAIL - - [<video width="20.25e2"> mapping to <video> width property] - expected: FAIL - - [<video width="20.25E2"> mapping to <video> width property] - expected: FAIL - - [<video width="0"> mapping to <video> width property] - expected: FAIL - - [<video width="0%"> mapping to <video> width property] - expected: FAIL - - [<video width="0px"> mapping to <video> width property] - expected: FAIL - - [<video height="200"> mapping to <video> height property] - expected: FAIL - - [<video height="1007"> mapping to <video> height property] - expected: FAIL - - [<video height=" 00523 "> mapping to <video> height property] - expected: FAIL - - [<video height="200.25"> mapping to <video> height property] - expected: FAIL - - [<video height="200.7"> mapping to <video> height property] - expected: FAIL - - [<video height="200."> mapping to <video> height property] - expected: FAIL - - [<video height="200in"> mapping to <video> height property] - expected: FAIL - - [<video height="200.25in"> mapping to <video> height property] - expected: FAIL - - [<video height="200 %"> mapping to <video> height property] - expected: FAIL - - [<video height="200 abc"> mapping to <video> height property] - expected: FAIL - - [<video height="200%"> mapping to <video> height property] - expected: FAIL - - [<video height="200%abc"> mapping to <video> height property] - expected: FAIL - - [<video height="200.25%"> mapping to <video> height property] - expected: FAIL - - [<video height="200.%"> mapping to <video> height property] - expected: FAIL - - [<video height="20.25e2"> mapping to <video> height property] - expected: FAIL - - [<video height="20.25E2"> mapping to <video> height property] - expected: FAIL - - [<video height="0"> mapping to <video> height property] - expected: FAIL - - [<video height="0%"> mapping to <video> height property] - expected: FAIL - - [<video height="0px"> mapping to <video> height property] - expected: FAIL - [<object width="200"> mapping to <object> width property] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html.ini index c86bf3cd3ca..2f34b7feca8 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html.ini @@ -11,33 +11,18 @@ [Create, append and test immediately: <img> with invalid trailing attributes width=50pp height=25xx] expected: FAIL - [Computed style test: img with {"width":"10","height":"20"}] - expected: FAIL - [Computed style test: input with {"type":"image","width":"10","height":"20"}] expected: FAIL - [Computed style test: img with {"width":"0","height":"1"}] - expected: FAIL - [Computed style test: input with {"type":"image","width":"0","height":"1"}] expected: FAIL - [Computed style test: img with {"width":"1","height":"0"}] - expected: FAIL - [Computed style test: input with {"type":"image","width":"1","height":"0"}] expected: FAIL - [Computed style test: img with {"width":"0","height":"0"}] - expected: FAIL - [Computed style test: input with {"type":"image","width":"0","height":"0"}] expected: FAIL - [Computed style test: img with {"width":"0.5","height":"1.5"}] - expected: FAIL - [Computed style test: input with {"type":"image","width":"0.5","height":"1.5"}] expected: FAIL @@ -46,6 +31,3 @@ [Loaded images test: Error image with width and height attributes] expected: FAIL - - [Loaded images test: Error image with width, height and alt attributes] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/picture-aspect-ratio.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/picture-aspect-ratio.html.ini index b896e0912e9..f42067cfd4d 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/picture-aspect-ratio.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/picture-aspect-ratio.html.ini @@ -14,9 +14,6 @@ [If the <source> has only one of width/height, we don't get an aspect ratio, even if the <img> has both.] expected: FAIL - [If we don't have width/height on the source, we fall back to width/height on the <img>.] - expected: FAIL - [If we only have one width/height attribute, we should get that attribute mapped but no aspect ratio, even if <img> has attributes.] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-aspect-ratio.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-aspect-ratio.html.ini index 91492a24a22..dc2bad9e1b4 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-aspect-ratio.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-aspect-ratio.html.ini @@ -5,20 +5,17 @@ [Computed style] expected: FAIL - [Computed style test: video with {"width":"10","height":"20"}] - expected: FAIL - - [Computed style test: video with {"width":"0.5","height":"1.5"}] + [Video width and height attributes are used to infer aspect-ratio] expected: FAIL - [Computed style test: video with {"width":"0","height":"1"}] + [Aspect ratio for video with contain:size] expected: FAIL - [Computed style test: video with {"width":"1","height":"0"}] + [Aspect ratio for regular video] expected: FAIL - [Computed style test: video with {"width":"0","height":"0"}] + [Aspect ratio for regular video with width:auto] expected: FAIL - [Video width and height attributes are used to infer aspect-ratio] + [Aspect ratio for regular video with aspect-ratio:auto] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-intrinsic-width-height.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-intrinsic-width-height.html.ini index 94be05be34a..7b8eb526c87 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-intrinsic-width-height.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/attributes-for-embedded-content-and-images/video-intrinsic-width-height.html.ini @@ -8,8 +8,5 @@ [only height attribute] expected: FAIL - [both width/height attributes] - expected: FAIL - [both width/height attributes and style] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-001.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-001.html.ini index cc56e2bab22..229325b65c1 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-001.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-001.html.ini @@ -1,2 +1,2 @@ [audio-controls-001.html] - expected: FAIL + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-002.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-002.html.ini index 5d41c66850b..faf46b17767 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-002.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-controls-002.html.ini @@ -1,2 +1,2 @@ [audio-controls-002.html] - expected: FAIL + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-without-controls.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-without-controls.html.ini index 664cc92be7f..3dd4d3a3304 100644 --- a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-without-controls.html.ini +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content-rendering-rules/audio-without-controls.html.ini @@ -1,2 +1,2 @@ [audio-without-controls.html] - expected: FAIL + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content/audio-controls-intrinsic-size.html.ini b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content/audio-controls-intrinsic-size.html.ini new file mode 100644 index 00000000000..c2fa05a5e2f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/rendering/replaced-elements/embedded-content/audio-controls-intrinsic-size.html.ini @@ -0,0 +1,2 @@ +[audio-controls-intrinsic-size.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini new file mode 100644 index 00000000000..3ef58d6ccbf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini @@ -0,0 +1,2 @@ +[audio_loop_base.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html.ini new file mode 100644 index 00000000000..a2ddc0c20dc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html.ini @@ -0,0 +1,2 @@ +[audio_loop_seek_to_eos.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_volume_check.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_volume_check.html.ini new file mode 100644 index 00000000000..d37abb63212 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/audio_volume_check.html.ini @@ -0,0 +1,2 @@ +[audio_volume_check.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay.html.ini new file mode 100644 index 00000000000..0339bf9e008 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay.html.ini @@ -0,0 +1,2 @@ +[event_canplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini new file mode 100644 index 00000000000..af14b8396b0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_canplay_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini new file mode 100644 index 00000000000..ef3e8a35bde --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini @@ -0,0 +1,2 @@ +[event_canplaythrough.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini new file mode 100644 index 00000000000..f75dd6e8b29 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_canplaythrough_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini new file mode 100644 index 00000000000..518967cd9a5 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini @@ -0,0 +1,2 @@ +[event_loadeddata.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini new file mode 100644 index 00000000000..a7c85aa736c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_loadeddata_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini new file mode 100644 index 00000000000..ced1c32599c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini @@ -0,0 +1,2 @@ +[event_loadedmetadata.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini new file mode 100644 index 00000000000..fe1e95bfabb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_loadedmetadata_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart.html.ini new file mode 100644 index 00000000000..9ac01543763 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart.html.ini @@ -0,0 +1,2 @@ +[event_loadstart.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html.ini new file mode 100644 index 00000000000..3533dcdf9e9 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_loadstart_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini new file mode 100644 index 00000000000..6271984ab2f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini @@ -0,0 +1,2 @@ +[event_order_canplay_canplaythrough.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini new file mode 100644 index 00000000000..9fb8daccc01 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini @@ -0,0 +1,2 @@ +[event_order_canplay_playing.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini new file mode 100644 index 00000000000..85e19fa31eb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini @@ -0,0 +1,2 @@ +[event_order_loadedmetadata_loadeddata.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini new file mode 100644 index 00000000000..a29a11e6e5b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini @@ -0,0 +1,2 @@ +[event_order_loadstart_progress.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause.html.ini new file mode 100644 index 00000000000..93752299607 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause.html.ini @@ -0,0 +1,2 @@ +[event_pause.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html.ini new file mode 100644 index 00000000000..2e223a3ef18 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_pause_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play.html.ini new file mode 100644 index 00000000000..91695693b18 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play.html.ini @@ -0,0 +1,2 @@ +[event_play.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play_noautoplay.html.ini new file mode 100644 index 00000000000..2c36aac8918 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_play_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_play_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing.html.ini new file mode 100644 index 00000000000..cc05bef3e94 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing.html.ini @@ -0,0 +1,2 @@ +[event_playing.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini new file mode 100644 index 00000000000..7c94d30869a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_playing_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress.html.ini new file mode 100644 index 00000000000..d61cad0ca4c --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress.html.ini @@ -0,0 +1,2 @@ +[event_progress.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini new file mode 100644 index 00000000000..6f77c670d8d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_progress_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate.html.ini new file mode 100644 index 00000000000..9ee5c01b36f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate.html.ini @@ -0,0 +1,2 @@ +[event_timeupdate.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini new file mode 100644 index 00000000000..d55a13de4dd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini @@ -0,0 +1,2 @@ +[event_timeupdate_noautoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html.ini index d166ba7d290..9814aab271f 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html.ini @@ -1,5 +1,4 @@ [resource-selection-currentSrc.html] - expected: ERROR + expected: CRASH [Test currentSrc behaviour in various playback scenarios] expected: TIMEOUT - diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html.ini index aa1dd3eced7..50ed324ab02 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html.ini @@ -1,4 +1,5 @@ [canPlayType.html] + expected: CRASH [video/mp4; codecs="mp4v.20.8" (optional)] expected: PRECONDITION_FAILED diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html.ini new file mode 100644 index 00000000000..decebd9a276 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html.ini @@ -0,0 +1,2 @@ +[networkState_during_loadstart.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini new file mode 100644 index 00000000000..223bd9044cb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini @@ -0,0 +1,2 @@ +[networkState_during_progress.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_initial.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_initial.html.ini new file mode 100644 index 00000000000..ab3b208faad --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/networkState_initial.html.ini @@ -0,0 +1,2 @@ +[networkState_initial.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini new file mode 100644 index 00000000000..737e86c1bc8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini @@ -0,0 +1,2 @@ +[paused_false_during_play.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_true_during_pause.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_true_during_pause.html.ini new file mode 100644 index 00000000000..8bbfe437424 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/paused_true_during_pause.html.ini @@ -0,0 +1,2 @@ +[paused_true_during_pause.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html.ini new file mode 100644 index 00000000000..9916b6d53ae --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html.ini @@ -0,0 +1,2 @@ +[preload_reflects_none_autoplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini new file mode 100644 index 00000000000..8f28135581f --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini @@ -0,0 +1,2 @@ +[readyState_during_canplay.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini new file mode 100644 index 00000000000..ac67e8b6e18 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini @@ -0,0 +1,2 @@ +[readyState_during_canplaythrough.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini new file mode 100644 index 00000000000..ac5d1600bbf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini @@ -0,0 +1,2 @@ +[readyState_during_loadeddata.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini new file mode 100644 index 00000000000..6cea5087fe0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini @@ -0,0 +1,2 @@ +[readyState_during_loadedmetadata.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini new file mode 100644 index 00000000000..5ba52a45d03 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini @@ -0,0 +1,2 @@ +[readyState_during_playing.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_initial.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_initial.html.ini new file mode 100644 index 00000000000..467abe00573 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/readyState_initial.html.ini @@ -0,0 +1,2 @@ +[readyState_initial.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html.ini new file mode 100644 index 00000000000..0c07bee4b92 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html.ini @@ -0,0 +1,2 @@ +[src_reflects_attribute_not_source_elements.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/user-interface/muted.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/user-interface/muted.html.ini index 88f69a363a7..5ba870a3201 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/user-interface/muted.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/media-elements/user-interface/muted.html.ini @@ -1,4 +1,5 @@ [muted.html] + expected: CRASH [getting video.muted with muted="" (script-created)] expected: FAIL @@ -10,4 +11,3 @@ [getting audio.muted with muted="" (script-created)] expected: FAIL - diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html.ini new file mode 100644 index 00000000000..2f2425b5f54 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html.ini @@ -0,0 +1,2 @@ +[audio-play-in-inactive-document-crash.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_001.htm.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_001.htm.ini new file mode 100644 index 00000000000..654e6140acf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_001.htm.ini @@ -0,0 +1,2 @@ +[audio_001.htm] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_002.htm.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_002.htm.ini new file mode 100644 index 00000000000..f293c4e211e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-audio-element/audio_002.htm.ini @@ -0,0 +1,2 @@ +[audio_002.htm] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html.ini new file mode 100644 index 00000000000..f178bd061c1 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html.ini @@ -0,0 +1,2 @@ +[embed-ignored-in-media-element.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini index ff6467094b8..ccdaf8d61b2 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini @@ -1,3 +1,3 @@ [iframe_sandbox_popups_nonescaping-3.html] [Check that popups from a sandboxed iframe do not escape the sandbox] - expected: FAIL + expected: NOTRUN diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html.ini new file mode 100644 index 00000000000..a1029adffbf --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html.ini @@ -0,0 +1,2 @@ +[object-ignored-in-media-element.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/multipart-formdata.window.js.ini b/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/multipart-formdata.window.js.ini index ec479176724..987cc0447c7 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/multipart-formdata.window.js.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/multipart-formdata.window.js.ini @@ -176,9 +176,6 @@ [multipart/form-data: 0x00 in name (normal form)] expected: FAIL - [multipart/form-data: Basic test (formdata event)] - expected: FAIL - [multipart/form-data: non-ASCII in name and value (normal form)] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/grouping-content/the-ol-element/grouping-ol.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/grouping-content/the-ol-element/grouping-ol.html.ini index 7d2ad021a79..c0203efa1cf 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/grouping-content/the-ol-element/grouping-ol.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/grouping-content/the-ol-element/grouping-ol.html.ini @@ -1,5 +1,6 @@ [grouping-ol.html] type: testharness + expected: CRASH ['reversed' property should be defined on OL.] expected: FAIL @@ -83,4 +84,3 @@ [Deleting child element from reversed list does not change start value] expected: FAIL - diff --git a/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini new file mode 100644 index 00000000000..3518ca4269d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini @@ -0,0 +1,3 @@ +[dialog-active-document.html] + [showModal should throw when the document isn't active] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-audio-video-crash.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-audio-video-crash.html.ini new file mode 100644 index 00000000000..5dac0a23c1a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-audio-video-crash.html.ini @@ -0,0 +1,2 @@ +[dialog-audio-video-crash.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini index 5f3d94e5acc..e4406c4e3b1 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini @@ -29,3 +29,6 @@ [Although the document is not attached to any pages, showModal() should execute as normal.] expected: FAIL + + [When the document is not attached to any pages, showModal() should throw.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-active-document.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-active-document.html.ini new file mode 100644 index 00000000000..8ddd6a4539e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-active-document.html.ini @@ -0,0 +1,3 @@ +[popover-active-document.html] + [showPopover should throw when the document isn't active] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-minimum-role.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-minimum-role.html.ini new file mode 100644 index 00000000000..1ae0c3961a0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-minimum-role.html.ini @@ -0,0 +1,6 @@ +[popover-minimum-role.html] + [If specified on an element with an implicit role of generic, then the element's role instead maps to group.] + expected: FAIL + + [Dynamic changes to popover attribute should change the role.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/syntax/parsing/DOMContentLoaded-defer.html.ini b/tests/wpt/meta-legacy-layout/html/syntax/parsing/DOMContentLoaded-defer.html.ini deleted file mode 100644 index b8bdf33cb65..00000000000 --- a/tests/wpt/meta-legacy-layout/html/syntax/parsing/DOMContentLoaded-defer.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[DOMContentLoaded-defer.html] - [The end: DOMContentLoaded and defer scripts] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/resource-timing/initiator-type/audio.html.ini b/tests/wpt/meta-legacy-layout/resource-timing/initiator-type/audio.html.ini new file mode 100644 index 00000000000..7dbabf4700d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/resource-timing/initiator-type/audio.html.ini @@ -0,0 +1,2 @@ +[audio.html] + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/resource-timing/internal-resources-not-counted.html.ini b/tests/wpt/meta-legacy-layout/resource-timing/internal-resources-not-counted.html.ini new file mode 100644 index 00000000000..16bd2460fd4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/resource-timing/internal-resources-not-counted.html.ini @@ -0,0 +1,2 @@ +[internal-resources-not-counted.html] + expected: CRASH diff --git a/tests/wpt/meta/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini b/tests/wpt/meta/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini index 4b71ba5969b..348eebd4eed 100644 --- a/tests/wpt/meta/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini +++ b/tests/wpt/meta/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html.ini @@ -1,3 +1,13 @@ [cross-partition-navigation.tentative.https.html] + expected: TIMEOUT [Blob URL navigation should enforce noopener for a cross-top-level-site navigation] expected: FAIL + + [Blob URL window.open should enforce noopener for a cross-top-level-site navigation] + expected: FAIL + + [Blob URL link click should enforce noopener for a cross-top-level-site navigation] + expected: FAIL + + [Blob URL area element click should enforce noopener for a cross-top-level-site navigation] + expected: TIMEOUT diff --git a/tests/wpt/meta/MANIFEST.json b/tests/wpt/meta/MANIFEST.json index 098e27f4e4d..ed260c8f6db 100644 --- a/tests/wpt/meta/MANIFEST.json +++ b/tests/wpt/meta/MANIFEST.json @@ -2905,6 +2905,13 @@ {} ] ], + "container-list-items-crash.html": [ + "dcb4273accc14981a3ec9403f429670e3d15b2e3", + [ + null, + {} + ] + ], "counters-container-crash.html": [ "d195db937cef83b86292cf9e15beba77ca9a9df7", [ @@ -2976,6 +2983,13 @@ null, {} ] + ], + "style-containment-counter-crash.html": [ + "c9d642bd38310ceb35ca21c48cdd02c754464f3d", + [ + null, + {} + ] ] }, "css-masking": { @@ -4364,6 +4378,13 @@ null, {} ] + ], + "shadow-reassign-dynamic-005-crash.html": [ + "9e4f002cfec32cab44a4fe3b879a072f64a025bf", + [ + null, + {} + ] ] }, "css-scroll-anchoring": { @@ -5226,7 +5247,7 @@ }, "css-values": { "attr-crash.html": [ - "012dad91cf8f9e93fb93e07ff69a7f08b9e26b31", + "8ca828faab4d1f03b36c3314791e42f06a6abe7f", [ null, {} @@ -6849,20 +6870,6 @@ null, {} ] - ], - "chrome-1312699.html": [ - "c783b0d9cc9634654f59654945a1bdcf38539cc8", - [ - null, - {} - ] - ], - "content-visibility-crash.html": [ - "63111d03e3fab4673ec4d14cff6ad5737fd4f39c", - [ - null, - {} - ] ] } }, @@ -7376,6 +7383,22 @@ ] }, "the-select-element": { + "customizable-select": { + "nested-select-crash.html": [ + "dea01de80be0cfc9a08b7c325319ed95adba879b", + [ + null, + {} + ] + ], + "selectedoption-in-option-crash.html": [ + "d619b8dcd921d9911db9dfed5b0960ded9c291ee", + [ + null, + {} + ] + ] + }, "select-add-option-crash.html": [ "78e9e7de53fa395456ed2b9a5a97949478477214", [ @@ -25305,6 +25328,22 @@ ] ] }, + "resize-observer": { + "resize-loop-cancel-error-notification-console-manual.tentative.html": [ + "2c0fe2c0f2875f5db5ffe47d0f072b3e1bff9dd4", + [ + null, + {} + ] + ], + "resize-loop-error-notification-console-manual.tentative.html": [ + "ef7dba83866ad067f0df42d0ad933c97986d53a0", + [ + null, + {} + ] + ] + }, "screen-orientation": { "page-visibility-manual.html": [ "cc63279217806ff261195be2958194a5719cbaa1", @@ -36855,7 +36894,7 @@ }, "avif": { "animated-avif-timeout.html": [ - "0970c994d34c9624ee07f0f7c44c3f5df93b1321", + "e89b9a8e06c39b3820cae8562f697ac0ad7bcfcf", [ null, [ @@ -200360,6 +200399,84 @@ ] }, "text-box-trim": { + "border-padding-001.html": [ + "9c25c42a1def684b364e98dc9d6233cd5c700519", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "border-padding-002.html": [ + "59a071771ae94f646242a063410ec575fd441c93", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "border-padding-003.html": [ + "a114612906de9e2040883119af87f27be654e980", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "border-padding-004.html": [ + "dc9513b54df0e6ea18632f1c352dc4c63a004070", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "out-of-flow-001.html": [ + "b81eb775d6400e45ef264296d96ce5efa85734f1", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "out-of-flow-002.html": [ + "6bcd38cd686813f779e3114f176c8e71aa3e37d4", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], "text-box-trim-accumulation-001.html": [ "cdcc86b0a9e5d37ac3b830116888844f31c6a4f6", [ @@ -231222,6 +231339,19 @@ {} ] ], + "shadow-reassign-dynamic-006.html": [ + "ace701eea93f5b098505266c23420e6644aa9fb2", + [ + null, + [ + [ + "/css/css-scoping/shadow-reassign-dynamic-006-ref.html", + "==" + ] + ], + {} + ] + ], "shadow-root-insert-into-document.html": [ "a3b89be389a780dd53a1b53224810ecb4866c287", [ @@ -248957,6 +249087,19 @@ {} ] ], + "segment-break-transformation-ignorable-1.html": [ + "a62d4b396a8247d899e4310482f60a29a0997fe5", + [ + null, + [ + [ + "/css/css-text/line-breaking/segment-break-transformation-ignorable-1-ref.html", + "==" + ] + ], + {} + ] + ], "segment-break-transformation-removable-1.html": [ "7c2b820bee0022c8ec93ca9c52f52e3f697af883", [ @@ -265809,6 +265952,19 @@ {} ] ], + "text-shadow-emoji-transparent.html": [ + "8ea04ab593342a95cd954798478b1d583c7952bb", + [ + null, + [ + [ + "/css/css-text-decor/text-shadow/text-shadow-emoji-transparent-ref.html", + "==" + ] + ], + {} + ] + ], "textindent.html": [ "4b66f9dcb8916a125bced71bec37d757a5521af5", [ @@ -290460,20 +290616,7 @@ ] ], "attr-color-invalid-cast.html": [ - "d538eebdd9979bfda2398e46de72748dc0099810", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], - "attr-color-invalid-fallback.html": [ - "9e016d1630d37b3af41fbbd1f1231341ee54afcf", + "970535b003784b86fdd172d637833a30ebd69510", [ null, [ @@ -290486,7 +290629,7 @@ ] ], "attr-color-valid.html": [ - "8817e6b94c885b341fba262a4934d3dc2d8e3d9f", + "5a4608989c9b5c7740bfc573013928a9329029eb", [ null, [ @@ -290499,7 +290642,7 @@ ] ], "attr-in-max.html": [ - "314ed630b787f4b45169d1b0eb5cb1179f415832", + "f34f5017e76e74b89ccd7e1b84d8b088e3f1ac7d", [ null, [ @@ -290511,26 +290654,13 @@ {} ] ], - "attr-invalid-type-001.html": [ - "1f88c37c64038343b17d0960326c63fb8e625340", + "attr-in-slotted.html": [ + "54c792092a6dbd69defdb0aa552bfd8164dc8efd", [ null, [ [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], - "attr-invalid-type-002.html": [ - "dbdac8a4ba1cf15e583684c9c2b3ac158c0af614", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", + "/css/css-values/attr-in-slotted-ref.html", "==" ] ], @@ -290538,20 +290668,7 @@ ] ], "attr-length-invalid-cast.html": [ - "930832363605fa85651b075f17d6c109535c0b41", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], - "attr-length-invalid-fallback.html": [ - "e68fe7a47015c5868e0efb78c26f44e17f3c8764", + "04910df05b8164921e572f31a16f84e28a2ab172", [ null, [ @@ -290564,7 +290681,7 @@ ] ], "attr-length-valid-zero-nofallback.html": [ - "b8a042fd40319aaa128db5b34384470c96c915fe", + "f91121c07009769d8e09cfb6324f5484d07b50f4", [ null, [ @@ -290577,7 +290694,7 @@ ] ], "attr-length-valid-zero.html": [ - "fcdebc6fad73eb0d9204a18d6550f6ded9743066", + "19ece66a9dc95ca5ea1e2b9d0dba70c7313b40ac", [ null, [ @@ -290590,7 +290707,7 @@ ] ], "attr-length-valid.html": [ - "c78258ffe608f3f327fd7db8eb8ce181832187d4", + "f61c9aa4bef59ac347f9ec4fee4ffb500a45546e", [ null, [ @@ -290615,45 +290732,6 @@ {} ] ], - "attr-px-invalid-cast.html": [ - "54b43b4076d3bef14fbd0c76a42e21a1b7105c27", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], - "attr-px-invalid-fallback.html": [ - "27dfc10240379d3cf50af54319dcf769a2af9083", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], - "attr-px-valid.html": [ - "ec96924a6805bc6157a3845c12b630aed9e52fa8", - [ - null, - [ - [ - "/css/css-values/reference/200-200-green.html", - "==" - ] - ], - {} - ] - ], "calc-background-image-gradient-1.html": [ "f7d39be8d3d2d682e5f3fc4e77290d88b5591bf1", [ @@ -323875,6 +323953,136 @@ {} ] ], + "negated-always-matches-negated-first-of-type-when-ancestor-changes.html": [ + "33b65e6fb676f9be7606fb33ef5182ff47e06751", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-always-matches-negated-last-of-type-when-ancestor-changes.html": [ + "99c3982759003cc78580c1ecf2b5b83e1e4cb65f", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-is-always-matches-negated-first-of-type-when-ancestor-changes.html": [ + "6ed1f8c0e04d3c2465ee0d3f332202c3ed796047", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-is-always-matches-negated-last-of-type-when-ancestor-changes.html": [ + "500fd3aa4eeb585345fbcfd00081884e8af58194", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html": [ + "e9d66755c775a3ea6540235ada3f6d057a251230", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html": [ + "7a2c0f2022219ed66267d9c26f703f9df77c903d", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-negated-first-of-type-when-ancestor-changes.html": [ + "7e5376fc31f15febe5db2202e915427ea2e4cc5d", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-negated-last-of-type-when-ancestor-changes.html": [ + "67d35f94dfd173d54b42b42180e4c2e51499b560", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-never-matches-negated-first-of-type-when-ancestor-changes.html": [ + "c3064f6726dcbc486c88298a7aa1ca5a619ef495", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], + "negated-never-matches-negated-last-of-type-when-ancestor-changes.html": [ + "9cdd0e4f407c914285896710143a287622d989ae", + [ + null, + [ + [ + "/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html", + "==" + ] + ], + {} + ] + ], "negated-nth-child-when-ancestor-changes.html": [ "0d76146f19ad312d42a09cd89c14824424c193d3", [ @@ -328105,62 +328313,6 @@ ] ] }, - "fullscreen": { - "rendering": { - "backdrop-iframe.html": [ - "dbdf9c841a4685160987ed5df0ba5e632b754669", - [ - null, - [ - [ - "/fullscreen/rendering/backdrop-green-ref.html", - "==" - ] - ], - {} - ] - ], - "backdrop-inherit.html": [ - "3a38dc4c815269bcba1fb570c1b0ee1a06ff8b2e", - [ - null, - [ - [ - "/fullscreen/rendering/backdrop-green-ref.html", - "==" - ] - ], - {} - ] - ], - "backdrop-object.html": [ - "be285b76124def6099b9954d0125117ed65a4917", - [ - null, - [ - [ - "/fullscreen/rendering/backdrop-object-ref.html", - "==" - ] - ], - {} - ] - ], - "fullscreen-root-fills-page.html": [ - "e2a6217346db1a4f7850446760f8be43532fa4d2", - [ - null, - [ - [ - "/fullscreen/rendering/fullscreen-root-fills-page-ref.html", - "==" - ] - ], - {} - ] - ] - } - }, "html": { "browsers": { "sandboxing": { @@ -328225,7 +328377,7 @@ ] ], "2d.composite.grid.filter.no_shadow.drawImage.html": [ - "8e6b95ae2210375f6e0db2cfa408bf4a7694deb3", + "acf9892ec37555645872fc61f225e053a9d98b4e", [ null, [ @@ -328241,11 +328393,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328254,7 +328406,7 @@ ] ], "2d.composite.grid.filter.no_shadow.fillRect.html": [ - "5dca89e3c12b884f9d226d9b6b8f10f1a67d68ae", + "be37d492581c7147c239c3b009bc07c2a6b64ce5", [ null, [ @@ -328270,11 +328422,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328283,7 +328435,7 @@ ] ], "2d.composite.grid.filter.no_shadow.pattern.html": [ - "6b3c4c6a5890f555e3831ea7a27c5896a2f08b5f", + "7e68be70eaa9ccbc2ff6ba9a44af57bd842e2b74", [ null, [ @@ -328299,11 +328451,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328312,7 +328464,7 @@ ] ], "2d.composite.grid.filter.shadow.drawImage.html": [ - "f6872b221274b543dd16aa7568dc9f5b36da3791", + "918debe2e4097230a7b0e2adb9966614f1cabec0", [ null, [ @@ -328328,11 +328480,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328341,7 +328493,7 @@ ] ], "2d.composite.grid.filter.shadow.fillRect.html": [ - "1c68c0e454059db077a2469143608ad7f95cdb7c", + "363f9ed454efa0ab4fc5409fe907bb477041793a", [ null, [ @@ -328357,11 +328509,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328370,7 +328522,7 @@ ] ], "2d.composite.grid.filter.shadow.pattern.html": [ - "1e3f14fb9a3c1b62ec7b21c4ac7152d958811616", + "18ea3a473d8c9b001e3ee455d734c4ebd52e1559", [ null, [ @@ -328386,11 +328538,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328399,7 +328551,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.drawImage.html": [ - "31e0fba79189df8fab876b886a278509abbc8581", + "cd9ad95b92c2913f03dacfeb4f9170956dcabc0f", [ null, [ @@ -328415,11 +328567,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328428,7 +328580,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.fillRect.html": [ - "e14c336868ecdef5024ba8fd2f9d4b6bdb202d25", + "f007fd3fc7e16a3c52937295c5bbbb270b2128e9", [ null, [ @@ -328444,11 +328596,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328457,7 +328609,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.pattern.html": [ - "6f8159466dbd72bf6ae879484d2eb2a2b5db00fa", + "5362b2f1f5348b6f340b3d7224f132c746e42c0c", [ null, [ @@ -328473,11 +328625,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328486,7 +328638,7 @@ ] ], "2d.composite.grid.no_filter.shadow.drawImage.html": [ - "84527f5a2832d77cbd1e358ebee7bb9fbf2ae483", + "e77309135d69d819e08a3f695b0567b166f9b325", [ null, [ @@ -328502,11 +328654,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328515,7 +328667,7 @@ ] ], "2d.composite.grid.no_filter.shadow.fillRect.html": [ - "46bc366c8ac0cdad497c6145db3c8b16e96ee80e", + "c82ca80cadfb0519051ef0762fc4388773b10286", [ null, [ @@ -328531,11 +328683,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -328544,7 +328696,7 @@ ] ], "2d.composite.grid.no_filter.shadow.pattern.html": [ - "e636330c59f5b3b37f790c060e729730640b37af", + "bc7d0134b344a0fb6cf108a2c35bf848e2557182", [ null, [ @@ -328560,11 +328712,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -330984,6 +331136,19 @@ {} ] ], + "2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html": [ + "fac5f6f2b67163d652e4ddca6680c39dea3ae754", + [ + null, + [ + [ + "/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html", + "==" + ] + ], + {} + ] + ], "2d.text.measure.text-clusters-rendering-font-change.tentative.html": [ "a927cfcd33094f502c3d46fd88da7bd26381256b", [ @@ -331054,7 +331219,7 @@ "offscreen": { "compositing": { "2d.composite.grid.filter.no_shadow.drawImage.html": [ - "72b23aeeafb87787e402a298b2b9c6b87a6a1cb5", + "5a90053e8f681b2daf00bf143f46d729b748ce50", [ null, [ @@ -331070,11 +331235,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331083,7 +331248,7 @@ ] ], "2d.composite.grid.filter.no_shadow.drawImage.w.html": [ - "89f4dba75b570cc5ff514cd02d52b7597a3c9dfe", + "d010912cd06d497633726f0cdc9c7bb993b72615", [ null, [ @@ -331099,11 +331264,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331112,7 +331277,7 @@ ] ], "2d.composite.grid.filter.no_shadow.fillRect.html": [ - "3f8fdc8164d1fc971fd30d881d4a7ad4d28580fc", + "6bad129784f26b485759f0ae5bf66c3a14c129e2", [ null, [ @@ -331128,11 +331293,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331141,7 +331306,7 @@ ] ], "2d.composite.grid.filter.no_shadow.fillRect.w.html": [ - "37839bf8a8b460c1a500c6ba05047210edc3120f", + "0c93086b54c89cdcb5d1e7ea58006cd85ad13494", [ null, [ @@ -331157,11 +331322,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331170,7 +331335,7 @@ ] ], "2d.composite.grid.filter.no_shadow.pattern.html": [ - "0bb970ab3f84683b2ce40a140bd7288c13112838", + "47cd363f06ee8c030c7e85c38292f268c97ba519", [ null, [ @@ -331186,11 +331351,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331199,7 +331364,7 @@ ] ], "2d.composite.grid.filter.no_shadow.pattern.w.html": [ - "81d0a8e6a693ef89a730a7bbc12bddd09c0a8fc6", + "7f07a2c76451122e9ccb531f0839ebf8676f3976", [ null, [ @@ -331215,11 +331380,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331228,7 +331393,7 @@ ] ], "2d.composite.grid.filter.shadow.drawImage.html": [ - "5c9e992c7ce72164d04615a9d4fda9b629b21a85", + "fc8f2e20162c69328476d9041129595041353493", [ null, [ @@ -331244,11 +331409,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331257,7 +331422,7 @@ ] ], "2d.composite.grid.filter.shadow.drawImage.w.html": [ - "08e66abd46439ecb07fa8312fc5c0dad1bd28854", + "fb417b9c57610a1a13c89ee18f67cf9486465af3", [ null, [ @@ -331273,11 +331438,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331286,7 +331451,7 @@ ] ], "2d.composite.grid.filter.shadow.fillRect.html": [ - "0f6b88fd5e9e16e69213bdeb4dc66bb49c21427d", + "995bc9d65e62fe85fc4adec2b556ee3e8ec62541", [ null, [ @@ -331302,11 +331467,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331315,7 +331480,7 @@ ] ], "2d.composite.grid.filter.shadow.fillRect.w.html": [ - "f754f538b560b5bfd95539d4fd2033f3dbbea34a", + "78c509f40f3c0c125d93f9b54a33feb972f8e4fa", [ null, [ @@ -331331,11 +331496,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331344,7 +331509,7 @@ ] ], "2d.composite.grid.filter.shadow.pattern.html": [ - "e89aff9196dc194b5a4dd12a41f24312a0173e3d", + "f1bc4c64be79f6e25eebd61c634fd1ce8109e296", [ null, [ @@ -331360,11 +331525,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331373,7 +331538,7 @@ ] ], "2d.composite.grid.filter.shadow.pattern.w.html": [ - "79f7aab01cd4e14509bc951dd3e67bdfb1e60667", + "de144bfaa6410a9130276e7639020bd83fe80114", [ null, [ @@ -331389,11 +331554,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331402,7 +331567,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.drawImage.html": [ - "54a53b46576b55657183a59248937405efe3031a", + "5aac6d6b212d3910bc465d2755ffeeb6d8842c1c", [ null, [ @@ -331418,11 +331583,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331431,7 +331596,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.drawImage.w.html": [ - "4750ed210ffe98e6b7de2443764fd648e69e1254", + "67fdbabce2ea11eaa40e7ff8f94701c617b481cd", [ null, [ @@ -331447,11 +331612,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331460,7 +331625,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.fillRect.html": [ - "e69af8a79a92adbc0b3eff5e27a6295e873180f4", + "c1001d778158c9de4d95176917321141c2a4f01a", [ null, [ @@ -331476,11 +331641,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331489,7 +331654,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.fillRect.w.html": [ - "0cfc23ab86a5d823f695bc11d1ac2a24a94feb5d", + "fcc39718c39980b1c0e1c376f737d1d5e39016a0", [ null, [ @@ -331505,11 +331670,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331518,7 +331683,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.pattern.html": [ - "b6008b7c79f3106750ec7e07bdf1d98582e02843", + "b977eb0bec3e239ebd7cfc8ab925fe0f1ecc729c", [ null, [ @@ -331534,11 +331699,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331547,7 +331712,7 @@ ] ], "2d.composite.grid.no_filter.no_shadow.pattern.w.html": [ - "ef952ce12cdaa3ea260cbc0ff4aa0ed4de3ea68e", + "9e9eb0229157b2315dfbe83e90e756cd5d42ae4b", [ null, [ @@ -331563,11 +331728,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331576,7 +331741,7 @@ ] ], "2d.composite.grid.no_filter.shadow.drawImage.html": [ - "d25f183aeb8bc510e76a09c5571332e066c30aed", + "382f3abeb195fe5575cfa5f4980262ad0c9f960e", [ null, [ @@ -331592,11 +331757,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331605,7 +331770,7 @@ ] ], "2d.composite.grid.no_filter.shadow.drawImage.w.html": [ - "c66b467d627df12414affa25f21a23d6088cff6a", + "56db72864d3f1e5af63a5a55392b588b62313c96", [ null, [ @@ -331621,11 +331786,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331634,7 +331799,7 @@ ] ], "2d.composite.grid.no_filter.shadow.fillRect.html": [ - "3fdbfa72cafc7fe9a5e2e8eaf41662fd2c4013d8", + "bb58344fcbd6c3410cd3f6021e91cf2a446d5571", [ null, [ @@ -331650,11 +331815,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331663,7 +331828,7 @@ ] ], "2d.composite.grid.no_filter.shadow.fillRect.w.html": [ - "519631612f05abd4f078c6d6a632dcbfb4913ace", + "3586c806cd4e32efd891b4b6a638635d7106caf9", [ null, [ @@ -331679,11 +331844,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331692,7 +331857,7 @@ ] ], "2d.composite.grid.no_filter.shadow.pattern.html": [ - "d9df6be84f174dde2a3d1f4b957cf4f8315d32ad", + "9703ea138d0baac48fc5e21f2addb4c40c47f77f", [ null, [ @@ -331708,11 +331873,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -331721,7 +331886,7 @@ ] ], "2d.composite.grid.no_filter.shadow.pattern.w.html": [ - "5c698e8c7603057f8e6207dcca9396aae585b43e", + "318d2b971e446693cc616090c15427659a68981b", [ null, [ @@ -331737,11 +331902,11 @@ [ [ 0, - 2 + 3 ], [ 0, - 10210 + 25392 ] ] ] @@ -334473,6 +334638,32 @@ {} ] ], + "2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html": [ + "8d304cb1a78dbae42ff19aeb83926570198396aa", + [ + null, + [ + [ + "/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html", + "==" + ] + ], + {} + ] + ], + "2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html": [ + "76f61dad315a125da4b096c1181ef1b8d0aa30fd", + [ + null, + [ + [ + "/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html", + "==" + ] + ], + {} + ] + ], "2d.text.measure.text-clusters-rendering-font-change.tentative.html": [ "c8e3383a4623ae1ba9b9c76fd5073a4defb36a3b", [ @@ -343252,8 +343443,8 @@ }, "infrastructure": { "assumptions": { - "ahem-ref.html": [ - "9116232620fb1b65edd8b89ab86a2269158860e5", + "ahem.html": [ + "0607f9afb64f6f7638fab95abcf49208175c7036", [ null, [ @@ -343265,19 +343456,6 @@ {} ] ], - "ahem.html": [ - "068c1d4dee605a7a9f3ed4a0fd282779449712bb", - [ - null, - [ - [ - "/infrastructure/assumptions/ahem-ref.html", - "==" - ] - ], - {} - ] - ], "blank.html": [ "6d8da5e89ce644d74790ef97856709cc9bfe3d80", [ @@ -344110,7 +344288,7 @@ }, "jpegxl": { "3x3_jpeg_recompression.html": [ - "f28fca8fdce33b39ace86403a348195f910de481", + "7d484635b53d432fbbb47315a3ceaad7a3753a83", [ null, [ @@ -344130,7 +344308,7 @@ ], [ 0, - 9 + 275625 ] ] ] @@ -344139,7 +344317,7 @@ ] ], "3x3_srgb_lossless.html": [ - "589f11c68c4152eea3d395104c0d5ce4bbefbf4d", + "da70067ca670ebe58863af32296dbf3ed3ee2e23", [ null, [ @@ -344159,7 +344337,7 @@ ], [ 0, - 9 + 275625 ] ] ] @@ -344168,7 +344346,7 @@ ] ], "3x3_srgb_lossy.html": [ - "3a92b2b7301d35570b4349513ccc1e1318a8ca8f", + "83cd8eec3519ae1c89397ea666012e946f90441a", [ null, [ @@ -344188,7 +344366,7 @@ ], [ 0, - 9 + 275625 ] ] ] @@ -344197,7 +344375,7 @@ ] ], "3x3a_srgb_lossless.html": [ - "1de61a5ba2713b0fc876305666069cb58299de29", + "47c297fd46f419095f0fdf4dd1db1accf3d2e978", [ null, [ @@ -344217,7 +344395,7 @@ ], [ 0, - 9 + 275625 ] ] ] @@ -344226,7 +344404,7 @@ ] ], "3x3a_srgb_lossy.html": [ - "59583a11a9aab8bf4114bad2de3f405dffc3f0cd", + "894b4ddf7bc8979d02d6a3d516e2de880152b067", [ null, [ @@ -344246,7 +344424,7 @@ ], [ 0, - 9 + 275625 ] ] ] @@ -357599,7 +357777,7 @@ ], "workflows": { "check-workflow-run.yml": [ - "4b7e6575db6d26cc442e023b64d4ee82173637fa", + "0487f03a592fa354557ef109e0c3767017e0f856", [] ], "docker.yml": [ @@ -357607,23 +357785,23 @@ [] ], "documentation.yml": [ - "eecf8ea6369f1128a8992194d7b326ae7f64a528", + "f7e9fb2e13505840666e5831f4b20a9d119c3cbf", [] ], "epochs.yml": [ - "8e85ee75a843b9ebc6a40bdb5d7b91587badd5ca", + "8b2081364e5d75066bf62414dfcf45636226f2c7", [] ], "interfaces.yml": [ - "ff2a679b5983ed7913d8eaafff605b31bde38faf", + "302e0a846d823e7bb5f37586c8b595307a2a3ac8", [] ], "manifest.yml": [ - "aae43615a9ed23bf1aadbb6e9150bb65a95c1ee7", + "a27fc2258dea84679dd0e4b667d183526dea6208", [] ], "regen_certs.yml": [ - "bb0cea9f396c41faf9f045b402fb3b8ee99e1f4a", + "b66ba90065f9b142138f49d1a5ebf5b12d428f4e", [] ], "safari-wptrunner.yml": [ @@ -357645,7 +357823,7 @@ } }, ".gitignore": [ - "061700a9604b41d653959a8da34a47b55676a7c8", + "f2525f49ab6b76fdc05da313a1da1dc8c1ae8259", [] ], ".mailmap": [ @@ -357966,6 +358144,10 @@ "62f9e00aa338468f1a33a5fe91931378a4a72cad", [] ], + "derive_key_and_encrypt.js": [ + "5963a852fcfbe1ff42cf4a936ae5bcff86bc7635", + [] + ], "derived_bits_length.js": [ "5a7ed7eb50a0a0b683c1631b639be89b2e428a1c", [] @@ -358119,7 +358301,7 @@ }, "util": { "helpers.js": [ - "bda97003263ff4ac5a61c0941a144513e66ea9b0", + "c60371dc6adac9a77aee624e66b6680f6b4bfaca", [] ], "worker-report-crypto-subtle-presence.js": [ @@ -360498,7 +360680,7 @@ [] ], "animated-avif-timeout-ref.html": [ - "52374220c9155eda3442d0b9d92a896b6d20eebf", + "82febcca0b12e5a1730b1758e1542b593387b302", [] ] }, @@ -404669,7 +404851,7 @@ ], "support": { "cq-testcommon.js": [ - "672a7e9646e26229f9419d94137aaa1f7ea2e48e", + "a9b7b92ae526e6fe5b27b0f795bc7d52b4540bb3", [] ], "test.vtt": [ @@ -421064,6 +421246,10 @@ "cf789d631b1f61c6fee66d29fc5984d155180702", [] ], + "WEB_FEATURES.yml": [ + "76b76d0572b634a12d0f0e6abe530082c38ed3bc", + [] + ], "cascading-001-ref.html": [ "79a432c4557bbda081a9b1c8d0dd9602c0eb85e5", [] @@ -425428,6 +425614,10 @@ "38cd166ca8f45769c269039577aac391ad707e75", [] ], + "WEB_FEATURES.yml": [ + "25d7b8fde4de599495acdcfffc4cd9e736f481a8", + [] + ], "registered-property-change-style-002-ref.html": [ "758e769d7821fa55b82e339883f1f9c4d4f0d5e7", [] @@ -426706,6 +426896,10 @@ "9f407eb690e0fb3d033afba0817082f84e30b783", [] ], + "shadow-reassign-dynamic-006-ref.html": [ + "60a6282457f17663be1317392b579f5369277048", + [] + ], "slotted-placeholder-ref.html": [ "f99c0385d061766b49d55e7703bf596fe69d6ec2", [] @@ -430539,6 +430733,10 @@ [] ] }, + "segment-break-transformation-ignorable-1-ref.html": [ + "bd348fa50991df3d03baee81fb44d101997a568b", + [] + ], "segment-break-transformation-removable-ref.html": [ "0fa64d71dfee76e640870828277fda62c02ad0c8", [] @@ -433745,6 +433943,10 @@ "d3905fbfbc96f87bf3d209b1d7c5955d70782e4a", [] ], + "text-shadow-emoji-transparent-ref.html": [ + "cb4d0f57b0837f58b593257e4e547de22fa50ec5", + [] + ], "textindent-ref.html": [ "c3e3315e9b2795a5a5fb8a7e367bb133d6e442fe", [] @@ -435384,7 +435586,7 @@ [] ], "generalParallelTest.js": [ - "f6e14128fc07f08984ac705b2f6ec03f02bc2215", + "f8ad77ecde5957171ed9f1434fa842d92ac54479", [] ], "helper.js": [ @@ -435420,7 +435622,7 @@ [] ], "properties.js": [ - "0c0057b39e8041e57f2b460a195ba3ff0577a820", + "81cf9d46d5ff575e16b955ec2d64f579699fd441", [] ], "ruler-h-50%.png": [ @@ -435440,7 +435642,7 @@ [] ], "runParallelAsyncHarness.js": [ - "de9b7837900b4daa3884babe6545b57ea901da15", + "7293bf92d06fa9b6c8b8ad5d4063a398dd5ccb26", [] ], "square-purple.png": [ @@ -436928,8 +437130,12 @@ "526bb67def54a02a8e268cd0393451a27c2c7989", [] ], + "attr-in-slotted-ref.html": [ + "401641606ace63080f8fa9bea03bc01ba9a16bab", + [] + ], "attr-notype-fallback-ref.html": [ - "efb9b969f3a1ea041d48187b7a0477bef406814e", + "21f7362dbafd6b8bef9fc292cbd44d99fd205f1c", [] ], "calc-background-image-gradient-1-ref.html": [ @@ -443205,6 +443411,46 @@ "a3cc6d3d8f56fd31c4b19d23af606d7c65487145", [] ], + "negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html": [ + "a3b598998538ca29c891f5e480d4a0bcbbc24927", + [] + ], + "negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html": [ + "a3b598998538ca29c891f5e480d4a0bcbbc24927", + [] + ], + "negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-negated-first-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-negated-last-of-type-when-ancestor-changes-ref.html": [ + "2ddb130e05f5fe92afb1450de69894b60beb9fad", + [] + ], + "negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html": [ + "cadbabc7c5a0b671050b80d579d19cc6668ba2fc", + [] + ], + "negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html": [ + "cadbabc7c5a0b671050b80d579d19cc6668ba2fc", + [] + ], "negated-nth-child-when-ancestor-changes-ref.html": [ "bfa9d00e1b6ce666b8b3dc667dd7db07de8c48ad", [] @@ -444323,7 +444569,7 @@ [] ], "webkitgtk_minibrowser.md": [ - "7aac81e5fce660db84969f9c0a7cae429a257207", + "5dd047536ed055466d7f902e6f4da3b6c8f02b40", [] ] }, @@ -448038,44 +448284,8 @@ "6247f6d63211cd39dffca9fc507aefcdee586eba", [] ], - "navigate-ancestor-destination.https.html": [ - "f12849c8ec625f96ae8fd404d00e2a7bbbcefdaa", - [] - ], - "navigate-ancestor-destination.https.html.headers": [ - "6247f6d63211cd39dffca9fc507aefcdee586eba", - [] - ], - "navigate-ancestor-from-nested-fenced-frame.https.html": [ - "74800b969f772c9aecb186a29f51f3ceaef2cd16", - [] - ], - "navigate-ancestor-from-nested-fenced-frame.https.html.headers": [ - "6247f6d63211cd39dffca9fc507aefcdee586eba", - [] - ], - "navigate-ancestor-from-nested-iframe.https.html": [ - "63a0cca8b4f2d2a0fad9fd38d811b348f0b33d07", - [] - ], - "navigate-ancestor-from-nested-iframe.https.html.headers": [ - "6247f6d63211cd39dffca9fc507aefcdee586eba", - [] - ], - "navigate-ancestor-helper.https.html": [ - "71d55d4959bf733bd9722533b516626d995623dc", - [] - ], - "navigate-ancestor-helper.https.html.headers": [ - "6247f6d63211cd39dffca9fc507aefcdee586eba", - [] - ], "navigate-ancestor-helper.js": [ - "ade17c69f2cce20c85758b8f392f61c3f4e9d2bb", - [] - ], - "navigate-ancestor-test-runner.https.html": [ - "ab81bd8dea1335b319e51920210a7ef9f7331dd9", + "6dfecb8bc5e1f09ff2931f3aec214236aa727f60", [] ], "navigate-by-name-inner.html": [ @@ -449966,7 +450176,7 @@ ], "resources": { "additional-bids.py": [ - "721909a04583aa67edf6b893408e2f53f4498bb5", + "6c51d38a464fbedfa9e8236b9b08704415da64d0", [] ], "authorize-server-response.py": [ @@ -450006,7 +450216,7 @@ [] ], "fledge-util.sub.js": [ - "148613eef8d903352f84ef30012a5654d82a3fc6", + "6f16e5e1e8ce79da601eb2cb0c7bb03ddbbf6780", [] ], "fledge_http_server_util.py": [ @@ -450121,15 +450331,15 @@ [] ], "activeelement-after-calling-window-focus-middle.sub.html": [ - "c5a0d60a71de3708c429769c221c5e38555a9964", + "da5164e4252efaf1023dc813ca5f32e9f4ae1c6f", [] ], "activeelement-after-calling-window-focus-outer-different.sub.html": [ - "2cddcf233dbd618b3ba42868c7b191f7d89ff8e9", + "bbbb50d4e4576a0f7b689dda67b53d8d144685a2", [] ], "activeelement-after-calling-window-focus-outer-same.sub.html": [ - "4833e94bc9414c461d6779e5a762e9d2833ceeea", + "b3ce29e20d27d62c2ebef5a22746abdc42461724", [] ], "activeelement-after-focusing-different-site-iframe-inner-contentwindow.html": [ @@ -450141,7 +450351,7 @@ [] ], "activeelement-after-focusing-different-site-iframe-outer-contentwindow.sub.html": [ - "fd66cbaa55c2044922af9d232ca2276ddf5b3028", + "4a9a9a110d9fd29b66eed4a6a5b30be0cab27dce", [] ], "activeelement-after-focusing-different-site-iframe-outer.sub.html": [ @@ -450325,11 +450535,11 @@ [] ], "iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html": [ - "e3a5facf82e4c08753705ee1803b76ceef30f671", + "c59e3ec703f32b1143de28cfa4522e54ae5b1e09", [] ], "iframe-contentwindow-focus-with-different-site-intermediate-frame-outer.sub.html": [ - "9dbb6af9d9a4dd795cd0976bc87695e0363372b4", + "cc5412dfb488faf85497b11ca9461849b333bd11", [] ], "iframe-contentwindow-focus-with-same-as-top-intermediate-frame-inner.html": [ @@ -450337,11 +450547,11 @@ [] ], "iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html": [ - "747e1467466eabe5b09ec80891603e8ad1a5335c", + "a94a03101c587d7e917baa4a68a0aab564e8f14c", [] ], "iframe-contentwindow-focus-with-same-as-top-intermediate-frame-outer.html": [ - "71cfe78c0d7614f585a7dcecb3b6c12e6698d321", + "bd96a9680cef6cf346e2710ea756a79cfb631c0b", [] ], "iframe-focus-with-different-site-intermediate-frame-inner.html": [ @@ -450353,7 +450563,7 @@ [] ], "iframe-focus-with-different-site-intermediate-frame-outer.sub.html": [ - "5e80410206d0d2fe7cbe5faef206c9a930a5a8ed", + "299f3787b3a7959e3ae2f49895d5d7bac6e029bb", [] ], "iframe-focus-with-same-as-top-intermediate-frame-inner.html": [ @@ -451609,20 +451819,6 @@ ] } }, - "rendering": { - "backdrop-green-ref.html": [ - "3126fe194261f7ce7f6039885e4ec73e7a997468", - [] - ], - "backdrop-object-ref.html": [ - "6c7071a727dd27d182ae017e9f6dbc0834361ddc", - [] - ], - "fullscreen-root-fills-page-ref.html": [ - "b2bf13557a2c3540645e3aa45a0850a61f8f0b28", - [] - ] - }, "trusted-click.js": [ "51fbce7ee4355ec4ac2b923f24feb75a944f4390", [] @@ -451648,7 +451844,7 @@ [] ], "generic-sensor-iframe-tests.sub.js": [ - "ed3415e66ec799da22277dcd3f81dbbfb956145b", + "277d5d0ea9b290b554a7746567dde65b826a165d", [] ], "generic-sensor-tests.js": [ @@ -453995,7 +454191,7 @@ [] ], "2d.composite.grid.filter.no_shadow.drawImage.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.no_shadow.fillRect-expected.html": [ @@ -454003,7 +454199,7 @@ [] ], "2d.composite.grid.filter.no_shadow.fillRect.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.no_shadow.pattern-expected.html": [ @@ -454011,7 +454207,7 @@ [] ], "2d.composite.grid.filter.no_shadow.pattern.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.shadow.drawImage-expected.html": [ @@ -454019,7 +454215,7 @@ [] ], "2d.composite.grid.filter.shadow.drawImage.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.filter.shadow.fillRect-expected.html": [ @@ -454027,7 +454223,7 @@ [] ], "2d.composite.grid.filter.shadow.fillRect.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.filter.shadow.pattern-expected.html": [ @@ -454035,7 +454231,7 @@ [] ], "2d.composite.grid.filter.shadow.pattern.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.no_filter.no_shadow.drawImage-expected.html": [ @@ -454043,7 +454239,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.drawImage.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.no_shadow.fillRect-expected.html": [ @@ -454051,7 +454247,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.fillRect.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.no_shadow.pattern-expected.html": [ @@ -454059,7 +454255,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.pattern.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.shadow.drawImage-expected.html": [ @@ -454067,7 +454263,7 @@ [] ], "2d.composite.grid.no_filter.shadow.drawImage.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ], "2d.composite.grid.no_filter.shadow.fillRect-expected.html": [ @@ -454075,7 +454271,7 @@ [] ], "2d.composite.grid.no_filter.shadow.fillRect.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ], "2d.composite.grid.no_filter.shadow.pattern-expected.html": [ @@ -454083,7 +454279,7 @@ [] ], "2d.composite.grid.no_filter.shadow.pattern.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ], "2d.composite.image.clear.png": [ @@ -455766,6 +455962,10 @@ "2dffe90aadc57ae07067fa7decab24fd43fc8728", [] ], + "2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html": [ + "6d109c3ffcd3ed269cd68638a4a722ac7d4a5c58", + [] + ], "2d.text.measure.text-clusters-rendering-font-change.tentative-expected.html": [ "9a9443962dfb988da61453159d02d953e620be6c", [] @@ -455805,7 +456005,7 @@ [] ], "2d.composite.grid.filter.no_shadow.drawImage.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.no_shadow.fillRect-expected.html": [ @@ -455813,7 +456013,7 @@ [] ], "2d.composite.grid.filter.no_shadow.fillRect.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.no_shadow.pattern-expected.html": [ @@ -455821,7 +456021,7 @@ [] ], "2d.composite.grid.filter.no_shadow.pattern.png": [ - "2318c1ec94e401b19677b4c4b5e7badff8cea77e", + "263ed6ecdd29143e3a572ec18811ca96f893e621", [] ], "2d.composite.grid.filter.shadow.drawImage-expected.html": [ @@ -455829,7 +456029,7 @@ [] ], "2d.composite.grid.filter.shadow.drawImage.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.filter.shadow.fillRect-expected.html": [ @@ -455837,7 +456037,7 @@ [] ], "2d.composite.grid.filter.shadow.fillRect.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.filter.shadow.pattern-expected.html": [ @@ -455845,7 +456045,7 @@ [] ], "2d.composite.grid.filter.shadow.pattern.png": [ - "fde787731168e3a2565ca15d6da5e160a03ef484", + "ade9f67ef2e8b1a46ca58cde2e7b85f0373ba83a", [] ], "2d.composite.grid.no_filter.no_shadow.drawImage-expected.html": [ @@ -455853,7 +456053,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.drawImage.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.no_shadow.fillRect-expected.html": [ @@ -455861,7 +456061,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.fillRect.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.no_shadow.pattern-expected.html": [ @@ -455869,7 +456069,7 @@ [] ], "2d.composite.grid.no_filter.no_shadow.pattern.png": [ - "ce392a1dcccc5e06a3d163dff873a5647ecdb65c", + "0163f403ca425156553ada8e5b8548261f774ba4", [] ], "2d.composite.grid.no_filter.shadow.drawImage-expected.html": [ @@ -455877,7 +456077,7 @@ [] ], "2d.composite.grid.no_filter.shadow.drawImage.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ], "2d.composite.grid.no_filter.shadow.fillRect-expected.html": [ @@ -455885,7 +456085,7 @@ [] ], "2d.composite.grid.no_filter.shadow.fillRect.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ], "2d.composite.grid.no_filter.shadow.pattern-expected.html": [ @@ -455893,7 +456093,7 @@ [] ], "2d.composite.grid.no_filter.shadow.pattern.png": [ - "aca03a61b220c1022c65b71dbd092f7b6de3c754", + "6e80ad32bb6f6e29fb35286262e0f3120e09bbb4", [] ] }, @@ -456390,6 +456590,10 @@ "2dffe90aadc57ae07067fa7decab24fd43fc8728", [] ], + "2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html": [ + "6d109c3ffcd3ed269cd68638a4a722ac7d4a5c58", + [] + ], "2d.text.measure.text-clusters-rendering-font-change.tentative-expected.html": [ "9a9443962dfb988da61453159d02d953e620be6c", [] @@ -456569,7 +456773,7 @@ [] ], "compositing.yaml": [ - "1db0c590db2bce8d1e3429e92ec1f7880cbb3cb9", + "838ad4b06cba88bc6ea080ca52a5f1ec3fb53cd5", [] ], "conformance_requirements.yaml": [ @@ -456617,7 +456821,7 @@ [] ], "text.yaml": [ - "78312640c08938cf81e38ca0671b82280093e43b", + "7fe59a91a357868cf5f97773e8a70a15988e0400", [] ], "the-canvas-state.yaml": [ @@ -469158,7 +469362,7 @@ }, "tools": { "ahem-generate-table.py": [ - "314279f67105958badfa56b37a4bcc2625797f5d", + "0898ab78c1891afe037b6e23ba70a7ad440fb8ac", [] ] } @@ -471076,23 +471280,23 @@ }, "jpegxl": { "3x3_jpeg_recompression-ref.html": [ - "070243d6a7e66183f9a7bcbe77cd7263e0ecbcc0", + "e0fb0f319ff75f6d79039dc8828eb9e13b2d66ed", [] ], "3x3_srgb_lossless-ref.html": [ - "1bb50832409d6aa7a645a413622ccc5e2443bea8", + "498cbf3944ae894b0dd661b83ea9d7a7e3ff95ee", [] ], "3x3_srgb_lossy-ref.html": [ - "a5e95baba3b19607b9d7044328e4516937918784", + "ad43c9d00b9eece5e1e8628cd0b3743cf86f9f53", [] ], "3x3a_srgb_lossless-ref.html": [ - "75d8ba7452ede9efbe871e28637cc30120c88809", + "1a5ad157df91683afcf5c1eb0b976ff2cdd7fd26", [] ], "3x3a_srgb_lossy-ref.html": [ - "3a1c22e8a2775b32622ccc538e3cef14d527db5a", + "602c3aa96185b9938d3e317e83bedf0178a470f6", [] ], "META.yml": [ @@ -471277,7 +471481,7 @@ [] ], "largest-contentful-paint-helpers.js": [ - "52f7036466cca5d0c75d1966fe978db35f6237ad", + "d206beaef9945807f21f8c89c50c423e82ad2488", [] ], "lcp-sw-from-cache.js": [ @@ -471359,7 +471563,7 @@ ] }, "lint.ignore": [ - "cee60ba906e7fa2028fee655f4a175dbbab59032", + "ee19f061a74aa80a8aae9eff62261865144cc125", [] ], "loading": { @@ -474110,7 +474314,7 @@ "focus-reset": { "resources": { "helpers.mjs": [ - "0a8a0439e1c885fdf263da1ecc74bcbc304b35a0", + "fd611e806292e8165e96604bc8e1fcb405326292", [] ] } @@ -475071,6 +475275,10 @@ "fd3da53a29c3e7f55f950611d34694867b0ff0a4", [] ], + "permissions-policy-focus-without-user-activation.html": [ + "c802d6f06999e58e927fa52c08cfb4d81423e768", + [] + ], "permissions-policy-private-state-token-redemption.html": [ "7a055f0e7bfb8740b20afc1e43df0e0d66a5ef93", [] @@ -475826,7 +476034,7 @@ [] ], "pointerevent_styles.css": [ - "1ee3b0b3965ff9fb3c5960f606cca6477ce145a8", + "f5ed4828f6966cc7354a473310d2292f8b6d638e", [] ], "pointerevent_support.js": [ @@ -478421,10 +478629,6 @@ "54ddb35f3112001e646646dc2d1bfa6721ba19f8", [] ], - "check-layout.js": [ - "8634481497d70103cd6838b2859e0915005400f3", - [] - ], "chromium": { "README.md": [ "be090b332fc41b5f5b8fe45b4f5c156a5d26eaf3", @@ -479398,7 +479602,7 @@ [] ], "scroll-to-text-fragment-target.html": [ - "ceb9a2ca3ff0e0b3503796d28cfe6bab9029668f", + "3a2b3571147a7fc3e6fcf7cbdb9082d23b4e99d2", [] ], "stash.js": [ @@ -482664,6 +482868,10 @@ "1b63235b7cdffe9ebb43bfac3a01d5220e1519fb", [] ], + "erroneous-function-module.js": [ + "6d4630552559ea17b9fb6004664334bff72fb8a1", + [] + ], "frame0.html": [ "c9b559fe83a6e04f58364037976e82dbaa44591a", [] @@ -482680,6 +482888,30 @@ "1b63235b7cdffe9ebb43bfac3a01d5220e1519fb", [] ], + "frame2.html": [ + "bbbc067ce01f45c9386c0448bb86f7480295edad", + [] + ], + "frame2.html.headers": [ + "1b63235b7cdffe9ebb43bfac3a01d5220e1519fb", + [] + ], + "frame3.html": [ + "e12a2ad909a663e0ebc4d7b9b956a1e376e0e9e2", + [] + ], + "frame3.html.headers": [ + "1b63235b7cdffe9ebb43bfac3a01d5220e1519fb", + [] + ], + "frame4.html": [ + "716e803da0ada8f9dd1a3ed9768b03b05bb844c9", + [] + ], + "frame4.html.headers": [ + "1b63235b7cdffe9ebb43bfac3a01d5220e1519fb", + [] + ], "register-service-worker-iframe.https.html": [ "547ab1d93d9adb9cb82ea797ee5e900b9d0e067c", [] @@ -482692,6 +482924,10 @@ "896daa59828a485908b4a8bf826ec10b00a2ae2b", [] ], + "select-url-saved-query-inner.https.sub.html": [ + "9d5efe388d0145e77df69ef5a9a4513884668992", + [] + ], "sender0.html": [ "e3d0475f1220bbcbb71c11451bbd9ba96ec0f3eb", [] @@ -482761,7 +482997,7 @@ [] ], "simple-module.js": [ - "eeb0ce95b040687a57a7eaa65be7c17a88b592fe", + "e639f47000819e2c5974c1cb99bdb04e3dbb1cfb", [] ], "simple-module.js.headers": [ @@ -482777,7 +483013,7 @@ [] ], "util.js": [ - "09eb45c591b42b3bbb969948362668daf902b3f0", + "b1456fc01db71a46244068e264782916051087b1", [] ], "util.sub.js": [ @@ -482848,6 +483084,10 @@ "c5d057f3e2ffc613c1ae20c19986a3fb13c8c246", [] ], + "select-url-saved-query-multi-frame-inner.https.sub.html": [ + "549eec0fbfb97e8b373d954ef78c655ed4710c16", + [] + ], "utils.js": [ "a7462147d77c829ebda92d792faf664940b5f1c6", [] @@ -485471,7 +485711,7 @@ [] ], "run_tc.py": [ - "446afadac8886261a8cc32370e52ee524f03fd1a", + "9def3bebcab5622fad088c74f2280da5ac64536d", [] ], "taskcluster-run.py": [ @@ -486149,7 +486389,7 @@ [] ], "serve.py": [ - "a11e15db98db3f5f9e0980b39fdcffa5080d9737", + "2fe8c3dc5461241084e1baca28d9fef1b07e59c4", [] ], "test_functional.py": [ @@ -496440,7 +496680,7 @@ [] ], "error.py": [ - "b19693e2d25adfb1078e8db4b53a28ce6e7a545f", + "bd2b31728eceb883c31425dbb678a5712a450867", [] ], "protocol.py": [ @@ -496503,7 +496743,7 @@ [] ], "browser.py": [ - "932604397013bae93ce3d0ba58abc4d9424aa67d", + "923bf9904f19409b8e202db471795b0fbafa3ae0", [] ], "commands.json": [ @@ -496777,7 +497017,7 @@ [] ], "firefox.py": [ - "964ed8337a026af8d26a6af17032298e6f904cea", + "e55036ecc48d5d71f589cb26ff717a9141f48ab9", [] ], "firefox_android.py": [ @@ -496853,11 +497093,11 @@ [] ], "base.py": [ - "45d3af3bbc91045fd3d06722143f04dbfaf9c935", + "1dba97d94769d0690373c6b68f9e94c050c80805", [] ], "executorchrome.py": [ - "6ba361ee4c578866ea441a9336ed61708e77e32b", + "95e367a683d44e2d56027d345fbb163f096c592b", [] ], "executoredge.py": [ @@ -496881,7 +497121,7 @@ [] ], "executorwebdriver.py": [ - "22aaf031a73298cd5cfa40a5ba6538b3214176cc", + "ca7b531227b699f31e356301a9302c7aecadbcaf", [] ], "executorwktr.py": [ @@ -501518,7 +501758,7 @@ [] ], "helpers.py": [ - "0ca5bd28269a831ccdbcfdcbcb0eb748f308495f", + "1cb5b801da214d419bd2a060233ad1311313b408", [] ], "html": { @@ -501855,13 +502095,23 @@ "6b22a19db920390ef34e86711fc399569db31e13", [] ], + "conformance_tests": { + "byob_readtensor.https.any.js.headers": [ + "5f8621ef83660c66f0d037ea28fafefb558140f1", + [] + ], + "tensor.https.any.js.headers": [ + "5f8621ef83660c66f0d037ea28fafefb558140f1", + [] + ] + }, "resources": { "utils.js": [ - "973c16baca760264cd71dc8b28288a8b01a68d51", + "112d48774863cdcd9a96d216c92c9076e4971343", [] ], "utils_validation.js": [ - "f491801bf3a6c04385ff49c2bf8b54cb5e355113", + "0f07b777def10fcebba8cd0282dea463e0c1b37e", [] ] } @@ -506676,7 +506926,7 @@ ], "BlobURL": { "cross-partition-navigation.tentative.https.html": [ - "05f54b0ae0afa905ab2dfb03a9ac86bea4971449", + "ee879b0d95508a6dfd0f03973903c03f4a1dfa2a", [ null, { @@ -508741,7 +508991,7 @@ ] ], "get-databases.any.js": [ - "ac1ab15f27f7624238ab695957f50cc5bde1b453", + "a79adb808d925a53c6892ee7e193de6b8b9105af", [ "IndexedDB/get-databases.any.html", { @@ -514537,6 +514787,47 @@ } ] ], + "derive_key_and_encrypt.https.any.js": [ + "5edc832b6163bd8976c02ddbf42a375a8a36e87d", + [ + "WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.html", + { + "script_metadata": [ + [ + "title", + "WebCryptoAPI: deriveKey() Using HKDF and PBKDF2 from an ECDH key" + ], + [ + "script", + "derive_key_and_encrypt.js" + ], + [ + "script", + "../util/helpers.js" + ] + ] + } + ], + [ + "WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.worker.html", + { + "script_metadata": [ + [ + "title", + "WebCryptoAPI: deriveKey() Using HKDF and PBKDF2 from an ECDH key" + ], + [ + "script", + "derive_key_and_encrypt.js" + ], + [ + "script", + "../util/helpers.js" + ] + ] + } + ] + ], "derived_bits_length.https.any.js": [ "0aee2e3c172d30ab177fe89a8d75f964a2c9b703", [ @@ -539963,7 +540254,7 @@ ] ], "to-javascript-url-script-src.html": [ - "70dea1f985e6b7642b5bfd194c34f1d8c8dcaa74", + "e0b6d992e963fa63f78f27189737eaab397066ac", [ null, {} @@ -551301,7 +551592,7 @@ ] ], "scope-specificity.html": [ - "fa103ff3742fb341e80bf28b4a753d5a52918ddc", + "8541e0d6371cf56b35423d28a7c21ea4a117ec7a", [ null, {} @@ -551793,6 +552084,36 @@ } } }, + "css-color-hdr": { + "computed.html": [ + "7ee1a96297723ae937ea4d3ce9e36b12760a9475", + [ + null, + {} + ] + ], + "inheritance.html": [ + "4f7a44a77290736703b170425f5b15e0ca445039", + [ + null, + {} + ] + ], + "interpolation.html": [ + "62e079f6366d7979e130e72dfec8d7f9fede07b7", + [ + null, + {} + ] + ], + "parsing.html": [ + "5d377a1ca7ab3633639bf6290f9106b705a9d93c", + [ + null, + {} + ] + ] + }, "css-conditional": { "at-supports-whitespace.html": [ "12683ab92bb46af035b5bfa17b466b23736d1c5c", @@ -551803,476 +552124,476 @@ ], "container-queries": { "animation-container-size.html": [ - "e620335c358544c57ba58fd87e8cdd5d242c616e", + "0a142ef7e267f9987c5b81fbd2b84fa940ec180c", [ null, {} ] ], "animation-container-type-dynamic.html": [ - "473c914d8a534ae3ddd76d956075bc5bdf0ef5f8", + "404a4c69cd8a722bf05f3b935008c69f7a80b54c", [ null, {} ] ], "animation-nested-animation.html": [ - "b956fed2b4c2895a74f8d68de99632a7edecbd81", + "cc43b74587317bdc45d63e8b82a2904881267e9d", [ null, {} ] ], "animation-nested-transition.html": [ - "ca8808664efcf8d00ac0d9af3a2ec90cf0f7a779", + "ed1de7af78226495e8730cb147c31fbf1c7b4107", [ null, {} ] ], "aspect-ratio-feature-evaluation.html": [ - "9b68e8679d08eb440b3c1adc1fa11cf1cf8db6c4", + "590f2b227aaf5246bdc27cdca6d0246fd2a6ba0d", [ null, {} ] ], "at-container-parsing.html": [ - "5c9d8c1bb9ea63a34016ca1a4b9931186a9c2209", + "183242e69dd5d4520def895bfa3abc3ad36e81ba", [ null, {} ] ], "at-container-serialization.html": [ - "7e6e3e9945245013c2a7d795b3ead5d2ab13e4fc", + "dbe9ea023e885c3446ba05063f0a005542ea05ed", [ null, {} ] ], "at-container-style-parsing.html": [ - "c63cc76560b4680d5a33863bda747c9fdde9cada", + "2e6722335c2c307343b0cc36660e22e87ff620bf", [ null, {} ] ], "at-container-style-serialization.html": [ - "bd9d23a4b705de1e842018e94c76b6431412b0cb", + "f128109c678e44c35727362173df403b1dd37416", [ null, {} ] ], "auto-scrollbars.html": [ - "96f082f38aa5595d63e72f4d1954c4e9140156bf", + "a08d694ac5711b0ca8526fe21ef5a84c8db0b849", [ null, {} ] ], "backdrop-invalidation.html": [ - "6f7d52cc386f0a0b963f2b92b4fdc182433d9909", + "a4a232e9a136a490f0b92163053af429ba37fd76", [ null, {} ] ], "calc-evaluation.html": [ - "60fd59e9cd436000d83127efa1469d60dcd0a6a5", + "ccdd31a061b38fef0ff1d357e48c2092de01490a", [ null, {} ] ], "canvas-as-container-005.html": [ - "3068ce708e68e8392cd2f2a7d9e35eaf7f5242db", + "a96d48411e4ca1575998242a10f0bc445237f076", [ null, {} ] ], "canvas-as-container-006.html": [ - "0fbb6f6d8332bfde3a0aec8f12198c9c650c4179", + "6cee3883aceb1cd5cebaf0337f57c51047cda987", [ null, {} ] ], "column-spanner-in-container.html": [ - "0f0b5f7850fd0664441e4a75e6e5d75a91514e0f", + "912c63043068e911e9dc4fd133632e5426570c23", [ null, {} ] ], "conditional-container-status.html": [ - "d0dfb97e9cb0bd32324c9ea180afa7938124de0c", + "23819c9a2817d913fc689f6c396080f795ded863", [ null, {} ] ], "container-computed.html": [ - "fa56ab77402869eb44c8bb393ba2f11310498861", + "7b74dccf7bda456d1f9c431b9a6adf3ab6f43dea", [ null, {} ] ], "container-for-shadow-dom.html": [ - "d79b3a9d554426754ceb6af98f6ca9e774b2e92d", + "13a2423a8225e379e1c21de7b0e6166e0f78d47a", [ null, {} ] ], "container-inheritance.html": [ - "9fc8cadc3e4a06ce1cc7360ad7bac5fbcce5c01a", + "b4efa1d5231e2dcba3a0fe382dcd574ae3f4ddcc", [ null, {} ] ], "container-inner-at-rules.html": [ - "4f0d6e02589bf1a31fd4f1b5c0a7ba9c2ae373c7", + "a6f2691d4955caa160344e7848b0770f254301b8", [ null, {} ] ], "container-inside-multicol-with-table.html": [ - "1046d57ef250fe74166c1ca6a7c4d56bcb07975c", + "af5ca3059043a8522147fc6f5ef7deb176c54b4f", [ null, {} ] ], "container-longhand-animation-type.html": [ - "efc9a817d94756242486a974afc50c8e4c75538b", + "8be0c51332c3f738762ffc04b1791d0382945686", [ null, {} ] ], "container-name-computed.html": [ - "abd2ebe086067772ab861eab37795a10bfbdce6a", + "083e604cd5b12f8a1e8535449bf05c60fe42151c", [ null, {} ] ], "container-name-invalidation.html": [ - "e918f182e2cfcea9792bded8fe5b5e6bb9b0f2fa", + "f9c8267b212470dc37e62dc81defdcb60c6f177c", [ null, {} ] ], "container-name-parsing.html": [ - "895b73ee66e598ed3e226890d7fd64ca5c67a86e", + "7cf6800b2e0e5552b6b1903ab2fb97682f7d0875", [ null, {} ] ], "container-name-tree-scoped.html": [ - "de633282e88b627b42f93f3fa90c020cf83f0bea", + "c2962ffa8d8001e1d15d23343df229539f01a2ca", [ null, {} ] ], "container-nested.html": [ - "dfe30ac0ae17d91f3a5e71f168acb19404918090", + "c39672096ad9d28d527ed24c2809c49f187d4318", [ null, {} ] ], "container-parsing.html": [ - "ab04102b569cf44fb307f68fb12d2ee61b2c7e9c", + "185d39e9ccfbd5afe4f1cf78b511bee3ec94aa08", [ null, {} ] ], "container-selection-unknown-features.html": [ - "5c2c67caaf1569fd4d9e739ff3a25cfc2bb9e65a", + "ef9111ffdeef63b42d24f8eff13d22529bcf86f9", [ null, {} ] ], "container-selection.html": [ - "d262da9ddfd7d9cc10e2378527c9f44f9a33169e", + "780dbd57cb22786dc7b6388abdadc10a8e538ab6", [ null, {} ] ], "container-size-invalidation-after-load.html": [ - "2d66b0990fd48a7ad95755307a061a798627bb60", + "ccf169872a7aca5b82993b449302c5f1d068773c", [ null, {} ] ], "container-size-invalidation.html": [ - "14433c9c3cf012474551ff53f6fcabe2a14ec4a0", + "ae8885e8d626fdd2363f1fffb04853dce666ac64", [ null, {} ] ], "container-size-nested-invalidation.html": [ - "c13c80ed3852e478a0d9db66d1f9892a45cbacb5", + "0b1bfc0c8a553627c302bb8b6e2ac861f0731597", [ null, {} ] ], "container-size-shadow-invalidation.html": [ - "4d2300701ae01fb857fead2e083478bbc29bee78", + "dfcc827981ecd5ddd1b049cbfc6bb7f5ab1062f5", [ null, {} ] ], "container-type-computed.html": [ - "60d5ab5a05a468c1c72eee3139681cd9de923fe2", + "2612b15d66dbaf36802e00df9d54ee007c2be63d", [ null, {} ] ], "container-type-containment.html": [ - "ba97b385d6c5672fb6193d49438acb77065d6d9c", + "f71fbde11122b11165e662b7a477f5a1638e6c10", [ null, {} ] ], "container-type-invalidation.html": [ - "e4f02028a74c8d71ab36d4b78cf0cf8a0ad843fd", + "710292431bab6fd4914b56b1a99255b7b397793a", [ null, {} ] ], "container-type-layout-invalidation.html": [ - "27c7b8a012debb1969d47e0d0c2c253b00298684", + "81c3083af3ea0b1a7b6d353f984d89ee14030289", [ null, {} ] ], "container-type-parsing.html": [ - "1e106852c5bd85e4f5887cef42befcb1925700c9", + "711e00b0f93168aa0cea1e193f66a9373077985b", [ null, {} ] ], "container-units-animation.html": [ - "79e59dc2a186fb3dc207547df9add7d327a357d5", + "984009ebdfef0ebb99ad36e5e694054bcc149caa", [ null, {} ] ], "container-units-basic.html": [ - "84f55d550eac0b5810d103d4b59c37a9080c0fb3", + "2cf5e5c6b1a5f9eff0b5217e4959755394fc7e7f", [ null, {} ] ], "container-units-computational-independence.html": [ - "94d786dfe51b18f5405a821f3dcb4378010b61ed", + "0a6777c3a2dd1d76a187e52b7b9257c35fc1a480", [ null, {} ] ], "container-units-content-box.html": [ - "0fc18b3175f9c2a83900df80c16b821843919599", + "b2657a2df06c2ca197538277fd85c7bf4e80b687", [ null, {} ] ], "container-units-in-at-container-dynamic.html": [ - "978d5a60051fdb8fd5c749fb25b8a212c648c6f0", + "ba8651d15f5e9db486b2cc9cdabe9c78d32f8f69", [ null, {} ] ], "container-units-in-at-container-fallback.html": [ - "fe7af8e38ea2366f31bbf044e2f73912b030cf65", + "91ec82a2a5921de27f9a1311c0e1df4c0def7c9f", [ null, {} ] ], "container-units-in-at-container.html": [ - "9faf62ffc0c2efa07f26b2617e8d18514e7504b0", + "3403ea64061182f98e0e16f16d32f6b2790a90ee", [ null, {} ] ], "container-units-ineligible-container.html": [ - "61565de6e2899940017797db87df3118c806e15e", + "e6a36461da36599a69d0543fa530d892a54347e8", [ null, {} ] ], "container-units-invalidation.html": [ - "602f6b69dc20401e831998a8a08c831658d0a24b", + "b4036875d2bd10ebb73baf7c4c4c88daa07ec1fb", [ null, {} ] ], "container-units-media-queries.html": [ - "b46e0cb715a9c269fd69b1668e26afd7296b3447", + "f9ed6eb8aa55b1737ba5cecd03cae6dee81e557c", [ null, {} ] ], "container-units-selection.html": [ - "66ab3e245803db542ae51cd1ba968b8b51f83605", + "cb69395b8b07207977d8b822d134241f400a1bd7", [ null, {} ] ], "container-units-shadow.html": [ - "3c672ad54265c0ddfe01e55b4af6062e7a761f86", + "d860e0825853b54864c70dfa2be7c179be1a2c56", [ null, {} ] ], "container-units-small-viewport-fallback.html": [ - "d1c95d33b8f124739f5da29e8c51ff305690a0d8", + "c4761392c8116312bbf976d1f9cee79fda5e712a", [ null, {} ] ], "container-units-svglength.html": [ - "e39c21e34616fd2abcdf903f3c9aa6465a5dac43", + "4b25b79bf5454e385e24c2883ac956baaaff1584", [ null, {} ] ], "container-units-typed-om.html": [ - "4ebb3518ac21373f28c1d1fc9a66644fec2ac565", + "935b5411a3654ff6b8342c34111d8c8003ef7032", [ null, {} ] ], "counters-flex-circular.html": [ - "04af2e2dc06ce2dd44f1fa78204ef7f5f66a5bb8", + "661c9a9b3f6f81d7575084254ac2f48213dd1344", [ null, {} ] ], "custom-property-style-queries.html": [ - "17ee5b4184bf9b71ca559031ef136aa5f7016277", + "2b3dd78fe5ec04994238e6b1b11c8d67de678ea3", [ null, {} ] ], "custom-property-style-query-change.html": [ - "ac15092b4cd11443b521e9857eaff01235a7dab3", + "13280e35803b8a9b720026ed226a16e61f75f38d", [ null, {} ] ], "deep-nested-inline-size-containers.html": [ - "40012b41f2188cd18ffeb9fe8b09cbbe5a87d0dc", + "6f311401b9c2dfd5768a07854ddc8ea7cb384dd0", [ null, {} ] ], "display-contents-dynamic-style-queries.html": [ - "466992f628fd29a98a6cf65a04872bb9408d9b13", + "ca4879bfc01be85b5c499ad0157bb8eb2cc3bcc6", [ null, {} ] ], "display-contents.html": [ - "3dd50caff3899c1c6f92b3a05eba6669db7adcef", + "bcb93171f90f9acc99f811c0c78d5ec25169bbf1", [ null, {} ] ], "display-none.html": [ - "4949cbbb7152cda5e278924ebe86ff73a52a3439", + "22b8fbedab5efa903f1bc2145913018787b19c9a", [ null, {} ] ], "font-relative-calc-dynamic.html": [ - "927dda9ffa111156ba7de53a1ea27c7ca2210c3d", + "fd807c2232ce08e02c1631a81f906b4e2abf4b99", [ null, {} ] ], "font-relative-units-dynamic.html": [ - "60c668a71c7d8768a8bf0baa1b0694d46a247d4f", + "a9983d2f028b4a2b4e9807c6b7211087a90c5235", [ null, {} ] ], "font-relative-units.html": [ - "38d1902825506e32d11ad16e805ce6304005336a", + "3d676402e1e6b266ede4e0249bfae29f159d14f7", [ null, {} ] ], "fragmented-container-001.html": [ - "f5f4d7de7bdb922cca0c48a30334859caa23bdf0", + "3db0ea22987d1004f602cf6fd77ceaeed76c852d", [ null, {} ] ], "get-animations.html": [ - "228f52ecf58361e93b486fb1295cfaffc00fe127", + "1cfa0a7773fdeb691ac959ec5b74181ac569961a", [ null, {} ] ], "grid-container.html": [ - "c7002f696f6e630c81271c6b4bf04f4dc33580ec", + "ee9838e6cf4621c03b2e79727e6de6b5596f18a3", [ null, {} ] ], "grid-item-container.html": [ - "f097c18b2ae6d2be3cee9b76b04b74eb4a6fae38", + "70ce6c16a6cd96294d5f5bedd870d2673c60a6fe", [ null, {} @@ -552286,84 +552607,84 @@ ] ], "iframe-in-container-invalidation.html": [ - "4c904d2d4b40d6bef3640e034cef4d1cf985376a", + "64be52980a236722247fa48e14cafd2f7a5c8539", [ null, {} ] ], "iframe-invalidation.html": [ - "c68fd4b16a9ffe95831524842f6f0005f75f4af9", + "58c2cd7330d82ed68b5e00f0ce8378015e089e47", [ null, {} ] ], "ineligible-containment.html": [ - "1e1cace51e7b80ccc2511ff92243ccc0fefa51dc", + "20b49299428a968c88ee14aa97ad1fa73103a8d8", [ null, {} ] ], "inheritance-from-container.html": [ - "4b815d68aa39c15b9eeb0bc50131701153caac8e", + "8bf69adff1bdfa6234d33c0c0d60f045173e58cc", [ null, {} ] ], "inline-size-and-min-width.html": [ - "91e8c48a93aae0066878be545696cfc4ae0e924e", + "f895f9aadd14a1afa984ca4ea6e86e381ff7f908", [ null, {} ] ], "inline-size-containment-vertical-rl.html": [ - "44fa62c79352c9afe756e2686580fe73bcc9379e", + "794268655adb74ad8128e6b0589295d813ee2b4f", [ null, {} ] ], "inline-size-containment.html": [ - "154a0a47ce13287298f8e784818a79f450a8a132", + "3c94640bf071533fea6f59453172cb95f9073fff", [ null, {} ] ], "layout-dependent-focus.html": [ - "3e28f4a1da16299a8e05cbc3700b3041d925a9e1", + "bc8b9b8dc0ba55f280c55f48da3893f65581fe80", [ null, {} ] ], "multicol-container-001.html": [ - "9785b6b0c624d6c94a9fe557e6395a1610c75f99", + "714c3b9572694039dbd39e517b24c309739adee9", [ null, {} ] ], "nested-query-containers.html": [ - "348e3d1529e294c06ad91126af628711ff2edbb7", + "b45bafc9bef797ab40f5181ac3cb155fc584a6aa", [ null, {} ] ], "nested-size-style-container-invalidation.html": [ - "87256703884c388f882a6c5a0098339af525c5c5", + "c22a1a3068b35860778fe0c6604a36233c8bb51b", [ null, {} ] ], "never-match-container.html": [ - "5acded7cc5a085f4aa822e64109872dc91711afa", + "d8557aa2cb16996e21ecdad0dbc5e34b58b73f24", [ null, {} @@ -552377,105 +552698,105 @@ ] ], "orthogonal-wm-container-query.html": [ - "630226500effd84819a696939c2133ccbbea763b", + "c3a4026f7d7bda0a97c9836772cb2444f2b87718", [ null, {} ] ], "percentage-padding-orthogonal.html": [ - "dac71be0bca6e2e86be48a28b1c8863763e57a23", + "e468505e6b0ac2697dace9bdf8dff6897088f3b4", [ null, {} ] ], "pseudo-elements-001.html": [ - "e147da5d9e85858a9b4ecc69f65a028d8e0b042b", + "8d66eb0045d25996b71fb2f6efe128def86d9023", [ null, {} ] ], "pseudo-elements-003.html": [ - "d7bec8a6e185b1f602600bbf10c4a1c20cf271a7", + "909a3215566ecf610f0934a4591526541e39077d", [ null, {} ] ], "pseudo-elements-004.html": [ - "6c0babfae23160f3901c51e4a1b4b4e6a41583df", + "0a4ce52b8d16b845e3461157ece886e6c834c5ac", [ null, {} ] ], "pseudo-elements-005.html": [ - "163349adc862bd7bf2c6a5064541eb7e19c66e4c", + "a357a13be9e803e34034d55071093c391e0aadfb", [ null, {} ] ], "pseudo-elements-006.html": [ - "39c00d70dc235b7baddd25e5587e844400cc231a", + "dee9db64667c8a8318965a983dba53efb914ef86", [ null, {} ] ], "pseudo-elements-007.html": [ - "575cb73af6515b01c39498e91a5db10a6f802551", + "1bcd43594596cf948c7678fd8cc70492bfa19e26", [ null, {} ] ], "pseudo-elements-008.html": [ - "dfa07922368d5caa89b7b2568c5bc26e0147b508", + "6db12a1829411d060e91c0a2e1d50bd3279bcc5b", [ null, {} ] ], "pseudo-elements-013.html": [ - "e41fc7611a4e30351910ebfd7908c0b9e0648552", + "1036c62ee5d409fe0e1c7141b5846abb3001b080", [ null, {} ] ], "query-content-box.html": [ - "5b83944d2f81deebb3c685cc7c87dd2fd03f17d7", + "1ed98ba1d56878c711e49bcbde5634c026bf4f8a", [ null, {} ] ], "query-evaluation-style.html": [ - "75876dd1ac354986fe7cba18ceebb99f510cafd5", + "585d5e7742b66f504a1e17e0b531b1802c41c509", [ null, {} ] ], "query-evaluation.html": [ - "d5c77c3a7e4a7c403dc058c36763d941069ef049", + "68d803be2c4e27b8278effc4410a85363dc40899", [ null, {} ] ], "reattach-container-with-dirty-child.html": [ - "914155a660239a10f47fc6f11011c559903f2725", + "5a4b9e311bde3dfcafb448d829b18c4ee2b2bfd0", [ null, {} ] ], "registered-color-style-queries.html": [ - "fd663d2c2d839aa84a175c0c077aa20f85a00766", + "dc1393ba05c872988487e733c56dbcb826c5ed26", [ null, {} @@ -552483,49 +552804,49 @@ ], "scroll-state": { "at-container-overflowing-parsing.html": [ - "5c15a825853f7e545d43fe6f2c73cb0cc4bc45b4", + "e45326a2ffec65ba1653afa5372e908bc825a8ae", [ null, {} ] ], "at-container-overflowing-serialization.html": [ - "f55cfeb63433cda37e1dd3393fc990107679b522", + "75a2be3bb788488b9521b8c6b1ae3e739f2b1c47", [ null, {} ] ], "at-container-snapped-parsing.html": [ - "0a8fe50bc38e7bb297cb2f0e9092680918599472", + "adeace0a7d4f27bc58ad9aeb657fa28e1a45d161", [ null, {} ] ], "at-container-snapped-serialization.html": [ - "59cc3d37f4f3fb9293568d5f82c5a060dc3fd456", + "748b5e3d1ace34e01062f7e4efa7ea39f075c41c", [ null, {} ] ], "at-container-stuck-parsing.html": [ - "a3a1f01458d1ce321b21089ba3f65ffa12ee34d4", + "c1e0b0b1807222d373328af31b5edf036909ef5b", [ null, {} ] ], "at-container-stuck-serialization.html": [ - "d5abede45c25be5b6c191482dee9936785d48068", + "85585130c1efe5a0b870c61d21602f1147fdd192", [ null, {} ] ], "container-type-scroll-state-computed.html": [ - "4e80712beab2dc63f7d22bbe0973a5d8e84a56cf", + "4e156db4e8cdaa9be05b2ac38c8697ed6309f670", [ null, {} @@ -552539,91 +552860,105 @@ ] ], "container-type-scroll-state-parsing.html": [ - "7f3779bc39d1850d423434fbe94f71e8dfb133cb", + "4a98243353669962b4819bb06eed403cda7a4b8e", [ null, {} ] ], "scroll-state-initially-overflowing.html": [ - "91e45c794039fa5d7fbabbee2d209490837a661e", + "fe26333e55c493eac5972d852d60f3915add8b75", [ null, {} ] ], "scroll-state-initially-snapped.html": [ - "64a171c361e7c93f1339887ed224a305c980ef99", + "c427e2dd569a59f58013396d2281bc4db9d0a8a6", [ null, {} ] ], "scroll-state-initially-stuck.html": [ - "c0d59b61e768d77afd44a3ae344718a6e83ef728", + "9319e8ce1d9fcbbb95efaf79439662cd5a25b7f6", [ null, {} ] ], "scroll-state-overflowing-change.html": [ - "ae0fd155f4c9c1e14483862a813a0684a4033726", + "15cdc96421fe89be7f944d7b5988a81bd591ab9a", [ null, {} ] ], "scroll-state-overflowing-container-type-change.html": [ - "a011da4039de5e77a53cae8bb2040248970f9fd7", + "ecb12141603238031aaabb644e607e0bad78b41a", [ null, {} ] ], "scroll-state-overflowing-layout-change.html": [ - "39181292ff7b82b9127dad64a594b6faa4d4a9ca", + "72344e2943dea37e553daca83ec68515aa7a7f91", + [ + null, + {} + ] + ], + "scroll-state-overflowing-pseudo.html": [ + "cb2638c5c122b53e4e122785203f3dcf6db8b8f5", [ null, {} ] ], "scroll-state-overflowing-wm.html": [ - "46b2a590782df1bc59c4c86084940d589a377101", + "137808db805ef93e976d726630215ca1c5e9406c", [ null, {} ] ], "scroll-state-snapped-change.html": [ - "6e9843b8b755b163acaa6f8137a86566803044e9", + "5dfea29404f5cbdea1fa66b8a0240d2b5a4648ce", [ null, {} ] ], "scroll-state-snapped-container-type-change.html": [ - "4eb5de2679ef423ca3269d8e557d85ca609b20d4", + "81ed499801110dc4bd113ee52ccb106f6ff67b63", [ null, {} ] ], "scroll-state-snapped-layout-change.html": [ - "26392239cdec562aaa84f072650bc7c0b23bde79", + "e1f2f687a8e6b26eac9c1255a989c83a11bb73ab", [ null, {} ] ], "scroll-state-snapped-none.html": [ - "8c7aae56bebf34adb9214a36b3779ff45d085dcd", + "60efb78082d99452e637bef5202e77d7634b628b", + [ + null, + {} + ] + ], + "scroll-state-snapped-pseudo.html": [ + "1d7aaafcf303885a55949144e9aa648d31947c88", [ null, {} ] ], "scroll-state-snapped-snap-changing.html": [ - "161c2e1368dd2ba88442c367cd1f1a06ac9b8b3f", + "85f678f07e1f40b04741c6a070af6b61cdaa229a", [ null, { @@ -552632,35 +552967,42 @@ ] ], "scroll-state-snapped-wm.html": [ - "b6703e81142a3e22726ccd826aaab873b09b43a4", + "10bfd83b3ab6a9822385b34325394cc3169849e2", [ null, {} ] ], "scroll-state-stuck-container-type-change.html": [ - "9c6df64832288706b6748dfdf2db9b3a907eab8c", + "f29b46e90f72bd689ddae2bde9ec45d29a89b158", [ null, {} ] ], "scroll-state-stuck-layout-change.html": [ - "9d5b8195eed14046f3804f549ebb9919a69688f6", + "a2297c8122ebb695da58e18546e8ea3786f97907", + [ + null, + {} + ] + ], + "scroll-state-stuck-pseudo.html": [ + "f6a89e120004d7e289b89417a567117651ae9668", [ null, {} ] ], "scroll-state-stuck-writing-direction.html": [ - "eb0c1c4a84ec54a1c167455c50f793711bdcffea", + "a082207aca7be76223ef61ce635f5f6a1d1b818a", [ null, {} ] ], "scroll-state-target-query-change.html": [ - "33459f470b9920e81092a93bc82a72ef01c195b5", + "605b398b7a99a767a567dab69da2f1880e6bb798", [ null, {} @@ -552668,154 +553010,154 @@ ] }, "sibling-layout-dependency.html": [ - "eb3df2ba410d34b62686351fc6834287fbd73baa", + "1cef872d60f93a620580ddd7f3620cb7b1be2ed3", [ null, {} ] ], "size-container-no-principal-box.html": [ - "730bb1d7361ae449d7c129a318d89cd6f9c6adb4", + "cca59a434cd1f7b81828888d300c281d5944053f", [ null, {} ] ], "size-container-writing-mode-change.html": [ - "dd709388b7ddffb951f52b2c84d9bbb4e8b93bac", + "33047dbb7584cacd3219fe7e32d622976be21aba", [ null, {} ] ], "size-feature-evaluation.html": [ - "282233dec9d00786295324bbea99e33db8c77eb8", + "4ea81271fd23f335b31c9e6c057e736e76a44f63", [ null, {} ] ], "style-change-in-container.html": [ - "abbb1266e6994fafe20cb8183e2cddbeefa82b84", + "612c387a6d3d7691b7535366797d77b93a8104e6", [ null, {} ] ], "style-container-for-shadow-dom.html": [ - "22ab9b9c3e802c346eebb92b65b76dcce307d064", + "5ff49d37909d1bdf92e535dae8c8e03b79fe8057", [ null, {} ] ], "style-container-invalidation-inheritance.html": [ - "9d2ab5611017f8519327d244d8287a3a61b8206b", + "2986b8461b9d6a5d0a0aaba8dd10f4b7b575aed3", [ null, {} ] ], "style-not-sharing-float.html": [ - "c36339491134b487d30dca332fe3aba1e794e3db", + "2931113726f4146694ce583a7a6f62cc8910ca02", [ null, {} ] ], "style-query-document-element.html": [ - "ff370a9b26db70d046b74c52f2279aed3c0c82a6", + "8ea959487b717ab0fc6ee0c619ed35054010741b", [ null, {} ] ], "style-query-no-cycle.html": [ - "5a179d38976637780dffcb23829c7ee386ae6371", + "fc7d658759e4b347f2b85d7512e3b93071b668a7", [ null, {} ] ], "style-query-with-unknown-width.html": [ - "52f250c2d0d942db2d1e2e7eeae0b89f593cc744", + "3791369436f6ab4a62ee16eaf566c30f3fb35332", [ null, {} ] ], "svg-foreignobject-child-container.html": [ - "8dc98a6321c1a3a8fe71936a09d092acc2666f52", + "95dde8d3a0232b11a7daee0c06ed540e4558cd8f", [ null, {} ] ], "svg-root-size-container.html": [ - "ccdcf557d513e7c3f7ebc4b4200fc03626c0c755", + "68b34fb2125f60dee93b8b4d3461bb8e5c2f4bcc", [ null, {} ] ], "top-layer-dialog-container.html": [ - "40a611bc918f687d3cb45947fec6491393664e35", + "9920f1957bef5c861ff46c6f35337837e267ed40", [ null, {} ] ], "top-layer-dialog.html": [ - "255b42acff67bf1459c874718a886cef761d76b1", + "6a9a297896a2f5b361784d399d34abaa534f28d2", [ null, {} ] ], "top-layer-nested-dialog.html": [ - "a988efe02f68f624918f138fe264b7b83cd321c1", + "b70ee7c29bda608fe2010bf97a6b67abf12f1f34", [ null, {} ] ], "transition-scrollbars.html": [ - "9d3f3a1c6c69ccab09c33492af49eb68fc7d2304", + "45ef9f7c7a497a2b26a38df54f78dfea6cd34902", [ null, {} ] ], "transition-style-change-event-002.html": [ - "f5b32c6fa0e282c4de823f1173d49779ca8d2744", + "64b3521d534420b0bc079655982734ad00c7d8d0", [ null, {} ] ], "transition-style-change-event.html": [ - "8940284f99091612c50ecf20cac6324f0faaac85", + "1034c554686997406ccb2647d3fe503fc132d234", [ null, {} ] ], "unsupported-axis.html": [ - "80bbf9776dfe486045275de068b0a4281ea5ffeb", + "02c6f22c3c322e3d405a8177502492302cbdbc5c", [ null, {} ] ], "viewport-units-dynamic.html": [ - "10f65efc0aeefa9a56c88b6820c85142987a70e2", + "3acef812adfb9b259b0a0bd635cf3c4e556537e3", [ null, {} ] ], "viewport-units.html": [ - "498a9c7eb2d31e3f15a49b3c16b0decdd246f144", + "9be28fec894d4ccf3eb5dd975124251856667806", [ null, {} @@ -552879,6 +553221,13 @@ {} ] ], + "supports-at-rule.tentative.html": [ + "84214c385cd901dd01dd363fce643bf1f63b9578", + [ + null, + {} + ] + ], "supports-conditionText.html": [ "ea74077dfd0070edd9e8ae4f2ab092bf369ce268", [ @@ -560806,7 +561155,7 @@ ] ], "grid-fit-content-percentage.html": [ - "892dbe40b46867b5f5c0b9b628e70decc9cdaedd", + "22683fef14f092bef74647f33b49ea67fb295ddf", [ null, {} @@ -564136,6 +564485,13 @@ null, {} ] + ], + "top-level-parent-pseudo-specificity.html": [ + "40ac2459831e618b7e9e19dda1280275ddbb7977", + [ + null, + {} + ] ] }, "css-overflow": { @@ -566482,6 +566838,13 @@ {} ] ], + "the-select-arrow-pseudo-element.tentative.html": [ + "b71bfe2363475442a9b0a151b72f9884ec14f240", + [ + null, + {} + ] + ], "tree-abiding-pseudo-elements.html": [ "7839a38049a190135149c0d3d3b35fbc2d29d207", [ @@ -568235,6 +568598,15 @@ null, {} ] + ], + "unrelated-gesture-scroll-during-snap.html": [ + "0390bdad257c9d7817eccaebba61fceacbf9ce8f", + [ + null, + { + "testdriver": true + } + ] ] }, "css-scroll-snap-2": { @@ -570760,7 +571132,28 @@ {} ] ], + "replaced-fractional-height-from-aspect-ratio.html": [ + "0aece7f95ac628b242eddc9c5db9968900842745", + [ + null, + {} + ] + ], "stretch": { + "auto-margins-1.html": [ + "658c3e30d71e2837163d4503cc6cb16ffab8a95d", + [ + null, + {} + ] + ], + "auto-margins-2.html": [ + "fcd2f12dfaed131f087f1c1802e4a489abd33b12", + [ + null, + {} + ] + ], "block-height-1.html": [ "94960f15b96f9fbb6370e94fbbffb9336373c76c", [ @@ -570775,6 +571168,34 @@ {} ] ], + "indefinite-1.html": [ + "e69689c939f42b330f68eaa2ae07885557f65657", + [ + null, + {} + ] + ], + "indefinite-2.html": [ + "e8df12ccaa32f01dce2f1dfd607ad98646e91f3d", + [ + null, + {} + ] + ], + "indefinite-3.html": [ + "67fbd50d4f7a74735d50a967bc111b02a9b54263", + [ + null, + {} + ] + ], + "indefinite-4.html": [ + "e08af30f6e4d01e1ee3d7f4c201ea9aeb3000dbd", + [ + null, + {} + ] + ], "parsing.html": [ "1f5bd39059ebffe59925dd616ad79e7d0a0f7f78", [ @@ -575982,7 +576403,7 @@ ] }, "properties-value-001.html": [ - "54e84be2b09052b329aa160ece8e5bc3ed78375d", + "314ae42a5b05a33cebf4695fa709d7e51112213f", [ null, { @@ -575991,14 +576412,14 @@ ] ], "properties-value-002.html": [ - "ed85b007d2c4d5dcd81eb71e5e87de9a6104739c", + "14c8f907dfb9b4bd6c2ae8678418ee8c01f6e9ce", [ null, {} ] ], "properties-value-003.html": [ - "faf0258a60be1767425a12ba29a2bd57eaad5194", + "d90aea54c310d150368f7b8f56bb4832d6679317", [ null, { @@ -576007,7 +576428,7 @@ ] ], "properties-value-implicit-001.html": [ - "8500436c529707f43349354ee87ef460e2d7d63b", + "d49505ef126aacd39183925d5ea3c6f07842230b", [ null, { @@ -576016,7 +576437,7 @@ ] ], "properties-value-inherit-001.html": [ - "abbdecdfae9159fd0d315d6dea955e81aec988ce", + "8088ddfad1af58b6de7a7e6f8f96f9a903d170f1", [ null, { @@ -576025,7 +576446,7 @@ ] ], "properties-value-inherit-002.html": [ - "9556cf7e23af7f755d5c1e9d09571fb8a9ee91aa", + "01990561438c93db8d3174c5e511c3042f0b8266", [ null, { @@ -576034,14 +576455,14 @@ ] ], "properties-value-inherit-003.html": [ - "13a16132134c14b273a443779a9b95468ec1af9f", + "60f498c53f6bb1ef7d91ee04ffb321242f5604ce", [ null, {} ] ], "pseudo-elements-001.html": [ - "146c533e235f0061872586039172a51c2d779873", + "5fb8fb6c0702a3ace19feda631ebf7070191db0f", [ null, {} @@ -579457,29 +579878,36 @@ ] ] }, + "attr-IACVT.html": [ + "22c5b4e84abe0c8589d17ee0ac92a324b1490873", + [ + null, + {} + ] + ], "attr-all-types.html": [ - "1e1f7d015ccffaa4641602e7aaf02b8128e2d4e8", + "c48e476b6d9ae71c0c66fe5fb8a9d26321feb633", [ null, {} ] ], "attr-container-style-query.html": [ - "2cc872509c085ec05c9da512b2388dc1e5bafa78", + "9afa95f81ef20abc277d38e8d1ed01c9b2f8a6cd", [ null, {} ] ], "attr-invalidation.html": [ - "a48556e5ff7273772e1b037114f0112a8773b6a0", + "47d617010c50859430190e1fe43f0de465bc399a", [ null, {} ] ], "attr-pseudo-elem-invalidation.html": [ - "1ef912bf75d2ed811e4676754a794dc6f2564f31", + "c17704f009c77e221ce489ca0c6dab27deaab89c", [ null, {} @@ -580369,7 +580797,7 @@ ] ], "signs-abs-computed.html": [ - "8bad89e557b8e7a042a24732e380e815c12de2ab", + "fe4b938c5b44bc7071486121ef641fb4270a6e8a", [ null, {} @@ -587415,7 +587843,14 @@ ] ], "ElementInternals-accessibility.html": [ - "3b04f257dea0ffef43775be018adcc624819b96a", + "20861e5cfd1db5c58ac5daf26830457b93967f02", + [ + null, + {} + ] + ], + "ElementInternals-accessibility.tentative.html": [ + "2bab6bedfd29872e3c424819db7900e1aa75517a", [ null, {} @@ -587859,7 +588294,14 @@ ] ], "AriaMixin-string-attributes.html": [ - "c058084ab28ce7d3688517578f5367a1287c235c", + "0b32326f5a4d3f5d42b1150b002055e0541caff8", + [ + null, + {} + ] + ], + "AriaMixin-string-attributes.tentative.html": [ + "8c81adb30c6c684feb7a601b143363292a2500b5", [ null, {} @@ -588969,14 +589411,39 @@ "dom": { "abort": { "AbortSignal.any.js": [ - "3bbdc11a92f90d4e2d4dc8a57ca5774b43dac556", + "c2fc88d3b4f103a995e0e6450ba4a0a4cabcad8e", [ "dom/abort/AbortSignal.any.html", - {} + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } + ], + [ + "dom/abort/AbortSignal.any.shadowrealm.html", + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } ], [ "dom/abort/AbortSignal.any.worker.html", - {} + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } ] ], "abort-signal-any.any.js": [ @@ -589012,14 +589479,39 @@ ] ], "event.any.js": [ - "34af8ee5c560ae23aea4bb61ecf7420049fa411e", + "afc003b94e6c19acd443f9c850e0b06d84fb74ea", [ "dom/abort/event.any.html", - {} + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } + ], + [ + "dom/abort/event.any.shadowrealm.html", + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } ], [ "dom/abort/event.any.worker.html", - {} + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker,shadowrealm" + ] + ] + } ] ], "reason-constructor.html": [ @@ -589028,6 +589520,45 @@ null, {} ] + ], + "timeout-shadowrealm.any.js": [ + "c87b047c2212eda35d0c79063093b7d3501538cc", + [ + "dom/abort/timeout-shadowrealm.any.shadowrealm.html", + { + "script_metadata": [ + [ + "global", + "shadowrealm" + ] + ] + } + ] + ], + "timeout.any.js": [ + "61b595e717c844259b6f75d9bd8b1cbd9b66d8d2", + [ + "dom/abort/timeout.any.html", + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker" + ] + ] + } + ], + [ + "dom/abort/timeout.any.worker.html", + { + "script_metadata": [ + [ + "global", + "window,dedicatedworker" + ] + ] + } + ] ] }, "attributes-are-nodes.html": [ @@ -592046,7 +592577,7 @@ ] ], "ParentNode-append.html": [ - "4e101f73a25719af97280f56cbfe8b463e1f5339", + "928c184b8d56198e230d33f8a6f7787203b8e375", [ null, {} @@ -592711,6 +593242,13 @@ {} ] ], + "focus-within.html": [ + "18d8c93b9982dd96a14c5548257292ad7b76c315", + [ + null, + {} + ] + ], "fullscreen-preserve.html": [ "810eeac9af90f80e18ed149e875b3656f81b3a1d", [ @@ -592818,7 +593356,7 @@ ] ], "selection-preserve.html": [ - "04b81c9a0563894c68ad498b49352e7de9e01049", + "8739209b620562caf8aeb49110c3e3ef5a7a059a", [ null, { @@ -597681,7 +598219,7 @@ ] ], "insertHTML.html": [ - "00bd0df1d5249bdbe2a41add8b2d58d8330bb3f2", + "efc2609828ccbf576fe79fbfe1b3da4f2f6bb6b7", [ "editing/plaintext-only/insertHTML.html?white-space=normal", { @@ -597708,7 +598246,7 @@ ] ], "insertLineBreak.html": [ - "73ee625dd6277257fb61240e37f363b58bac0430", + "32448ed37e25a3eaaca335dadb5c90591dcebf9d", [ "editing/plaintext-only/insertLineBreak.html?white-space=normal", { @@ -597739,7 +598277,7 @@ ] ], "insertParagraph.html": [ - "429da8d134f6bf21b726208046a53877a6a24e69", + "70cbdd1b36811988c9b77aefef4c8d994b960f4f", [ "editing/plaintext-only/insertParagraph.html?white-space=normal", { @@ -597766,7 +598304,7 @@ ] ], "insertText.html": [ - "664b9befb8d33b81e28971d69345cc2142f21a0b", + "4a3ef23bbbd8cb17733e17efbf046455736a1ecf", [ "editing/plaintext-only/insertText.html?white-space=normal", { @@ -597797,7 +598335,7 @@ ] ], "paste.https.html": [ - "9081028732a1a8f7c7c1bce0f581fc0686737a37", + "191a83ff8f05f6817388c814832578c4d1a409ef", [ "editing/plaintext-only/paste.https.html?white-space=normal", { @@ -598687,7 +599225,7 @@ ] ], "cross-origin-element.sub.html": [ - "1052bf246d0fa262ce5370f4152cb60dd758adab", + "25a07a435e9eea0119070c0c6caadb31887e4859", [ null, {} @@ -598759,7 +599297,7 @@ ] ], "image-TAO.sub.html": [ - "7b455dfa4c405de3918efbcd0f9648be09346948", + "7986e69500ef7db1f0bc6aeb1cb07d41455b8988", [ null, {} @@ -598849,13 +599387,6 @@ {} ] ], - "multiple-redirects-TAO.html": [ - "3a45b552bea0f599fd778e62a77759321384fd2f", - [ - null, - {} - ] - ], "observe-background-image.html": [ "6a43401cd0f4270f52b9167393b1b9fd0a7d9cce", [ @@ -598940,13 +599471,6 @@ {} ] ], - "redirects-tao-star.html": [ - "e5067d3d6bd7915522bfb670fad0919f0e4101fb", - [ - null, - {} - ] - ], "retrievability.html": [ "cd2c2a956e194cd06b5374a26dc9f1b06fe5f482", [ @@ -614739,24 +615263,30 @@ ] ], "navigate-ancestor-nested-fenced-frame.https.html": [ - "ec41fe8757564da2dda6107bc494266a87b7f323", + "fb50be94fbc098bf8f4a35093c09b699cba67ecd", [ null, - {} + { + "testdriver": true + } ] ], "navigate-ancestor-nested-iframe.https.html": [ - "977eae17486de1997c177921b1934d68ce1725bf", + "83656a28c114c0cd1f286c832eac5b7a86490c4d", [ null, - {} + { + "testdriver": true + } ] ], "navigate-ancestor-top-level-fenced-frame.https.html": [ - "9907f25292ca77a58dc8f310c57c3ccf6b7a8f8c", + "bfce01094d59eada4026f63d7fcbeaab187cdcaf", [ null, - {} + { + "testdriver": true + } ] ], "navigate-by-name-succeed.https.html": [ @@ -630282,7 +630812,7 @@ ] ], "additional-bids.https.window.js": [ - "3ba0b49cbc089e2c3789bbf0bf2d75f59c0145e1", + "9cddbaf065d17393ff30c0efab3413209c5fbda3", [ "fledge/tentative/additional-bids.https.window.html?1-last", { @@ -639351,7 +639881,7 @@ ] ], "server-response.https.window.js": [ - "1d272fb59a82c638834e1f2e6560d6204e8dbaf1", + "7bbe4bbf00840ab21c213ad3d4ab7ad7470974c7", [ "fledge/tentative/server-response.https.window.html?1-4", { @@ -639439,6 +639969,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639531,6 +640065,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639623,6 +640161,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639715,6 +640257,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639807,6 +640353,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639899,6 +640449,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -639991,6 +640545,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640083,6 +640641,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640175,6 +640737,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640267,6 +640833,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640359,6 +640929,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640451,6 +641025,106 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" + ] + ], + "timeout": "long" + } + ], + [ + "fledge/tentative/server-response.https.window.html?53-56", + { + "script_metadata": [ + [ + "script", + "/resources/testdriver.js" + ], + [ + "script", + "/resources/testdriver-vendor.js" + ], + [ + "script", + "/common/utils.js" + ], + [ + "script", + "resources/ba-fledge-util.sub.js" + ], + [ + "script", + "resources/fledge-util.sub.js" + ], + [ + "script", + "third_party/cbor-js/cbor.js" + ], + [ + "script", + "/common/subset-tests.js" + ], + [ + "timeout", + "long" + ], + [ + "variant", + "?1-4" + ], + [ + "variant", + "?5-8" + ], + [ + "variant", + "?9-12" + ], + [ + "variant", + "?13-16" + ], + [ + "variant", + "?17-20" + ], + [ + "variant", + "?21-24" + ], + [ + "variant", + "?25-28" + ], + [ + "variant", + "?29-32" + ], + [ + "variant", + "?33-36" + ], + [ + "variant", + "?37-40" + ], + [ + "variant", + "?41-44" + ], + [ + "variant", + "?45-48" + ], + [ + "variant", + "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -640543,6 +641217,10 @@ [ "variant", "?49-52" + ], + [ + "variant", + "?53-56" ] ], "timeout": "long" @@ -664400,90 +665078,6 @@ {} ] ], - "2d.composite.grid.filter.no_shadow.drawImage.worker.js": [ - "45329fcd9c8b222abe33fff963358e4b8ae728d6", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.html", - {} - ] - ], - "2d.composite.grid.filter.no_shadow.fillRect.worker.js": [ - "dff55436a40b07924332b17725d930f9c3956a4c", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.html", - {} - ] - ], - "2d.composite.grid.filter.no_shadow.pattern.worker.js": [ - "d3e79cd2d156f65378c8e9ddeb4f7ee326a0c2c4", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.html", - {} - ] - ], - "2d.composite.grid.filter.shadow.drawImage.worker.js": [ - "9a9c2f9363225722249284b1ac48709482b1f204", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.html", - {} - ] - ], - "2d.composite.grid.filter.shadow.fillRect.worker.js": [ - "f495009b301eeb9c36286f6fe8dc6edcc835427c", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.html", - {} - ] - ], - "2d.composite.grid.filter.shadow.pattern.worker.js": [ - "d960d0d54014226083b2d86e922048aea84a6db1", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.no_shadow.drawImage.worker.js": [ - "de1686a76e80b558ca3b9b40f86b9ea80a053a1d", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.no_shadow.fillRect.worker.js": [ - "cb60645b70402e4e97a34d78687e12365215613c", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.no_shadow.pattern.worker.js": [ - "e1479261ce22afe939a593343c1dcacc01dc0050", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.shadow.drawImage.worker.js": [ - "c7827238f6936c67f0a1a705008c38d4c75bc310", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.shadow.fillRect.worker.js": [ - "217fe38a8de678c2dc69b21faf5bc8abb6c2fd50", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.html", - {} - ] - ], - "2d.composite.grid.no_filter.shadow.pattern.worker.js": [ - "f26657b521426a8773ef674b1be07c31411adbc8", - [ - "html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.html", - {} - ] - ], "2d.composite.image.clear.html": [ "f001c4409c3e2c2ca59b64de64174cf6251624f6", [ @@ -682083,7 +682677,14 @@ }, "dom": { "aria-attribute-reflection.html": [ - "d2e5b03f853baa85ee53224953e3995ec3743a80", + "2a73f5c557b3e534756ccfa307ca958dde51c577", + [ + null, + {} + ] + ], + "aria-attribute-reflection.tentative.html": [ + "db38ddef06c61989dbe89bec9bc8b7ac14c55809", [ null, {} @@ -682922,7 +683523,7 @@ ] ], "innertext-whitespace-pre-line.html": [ - "c5696df9de87fa86803b87ed95101d320f146197", + "8ce76f2eb1fcb575cb58ac9bd1e6356b7a5cddd2", [ null, {} @@ -695396,7 +695997,7 @@ ] ], "selectedoption.tentative.html": [ - "b3381ac510a9905b0907e1528287197352bc4c86", + "398b0b988de057bed208846d5e8499a60fd45d3d", [ null, { @@ -695405,14 +696006,14 @@ ] ], "selectedoptionelement-attr.tentative.html": [ - "63b4af3abc8bf7b40c68295fe3d0ff6139c2229a", + "f7ef48c24e401fec34b1db776863f0160c9dcacf", [ null, {} ] ], "switch-picker-appearance.tentative.html": [ - "7a58f62e2900f8ca6c7cb1438a4f303602e31f03", + "3367cc7cd37dd6d9aa35960278ff14065fbcdcdd", [ null, { @@ -696014,6 +696615,13 @@ {} ] ], + "dialog-active-document.html": [ + "d6eea38fa8a3993de0643e6711f4924c4947c52d", + [ + null, + {} + ] + ], "dialog-autofocus-just-once.html": [ "894efd59dc290d682b6732e49782606a90f4fad1", [ @@ -696243,7 +696851,7 @@ ] ], "dialog-showModal.html": [ - "47612e759eaa4996f56366cbbd333ba676a08824", + "652378e015b56d88c99dd46bfce9b5e57e0aa076", [ null, {} @@ -697061,6 +697669,13 @@ } ] ], + "popover-active-document.html": [ + "6ad1142ed79c64c5a461813c59467e03d6b4bf97", + [ + null, + {} + ] + ], "popover-anchor-display-none.tentative.html": [ "8db022b1262f84ff6e570d13ce0bf14fbcdd5d68", [ @@ -697335,6 +697950,13 @@ } ] ], + "popover-minimum-role.html": [ + "8606f983969b9fc94e2684073a4946e9358e3507", + [ + null, + {} + ] + ], "popover-move-documents.html": [ "11f52c2f2f0d14c74649cc7c52ac6e5ac68058b1", [ @@ -715450,6 +716072,33 @@ ] }, "media-capabilities": { + "decodingInfo-webrtc.any.js": [ + "0f3a4fa0f2d282a694a9e0a0d5c2abfe0697cde1", + [ + "media-capabilities/decodingInfo-webrtc.any.html", + { + "script_metadata": [ + [ + "timeout", + "long" + ] + ], + "timeout": "long" + } + ], + [ + "media-capabilities/decodingInfo-webrtc.any.worker.html", + { + "script_metadata": [ + [ + "timeout", + "long" + ] + ], + "timeout": "long" + } + ] + ], "decodingInfo.any.js": [ "7362c11f932c7c57c87d3bfc394feb1b24b239d0", [ @@ -715477,13 +716126,6 @@ } ] ], - "decodingInfo.webrtc.html": [ - "f2839561006970694ad54e86a0613d8c2cfbb25f", - [ - null, - {} - ] - ], "decodingInfoEncryptedMedia.http.html": [ "267b23431b7fdf3baf3d4843d68778bb1cc15c85", [ @@ -715500,6 +716142,33 @@ } ] ], + "encodingInfo-webrtc.any.js": [ + "635801c9f1a4163269d719aa12e5e5396b9e6562", + [ + "media-capabilities/encodingInfo-webrtc.any.html", + { + "script_metadata": [ + [ + "timeout", + "long" + ] + ], + "timeout": "long" + } + ], + [ + "media-capabilities/encodingInfo-webrtc.any.worker.html", + { + "script_metadata": [ + [ + "timeout", + "long" + ] + ], + "timeout": "long" + } + ] + ], "encodingInfo.any.js": [ "6882b0ae9117ab268ff5710f7f9b397b1daedbbf", [ @@ -715511,13 +716180,6 @@ {} ] ], - "encodingInfo.webrtc.html": [ - "414b7944f6169e34f67979ce0a98ff915552f6b5", - [ - null, - {} - ] - ], "idlharness.any.js": [ "6da5c7d2848c2dc8a669dfcf621233c40a227c03", [ @@ -724165,7 +724827,7 @@ ] ], "paint-visited.html": [ - "c02ea2405258f34df3c88b17e4b6d383913ed8f9", + "eb61d51eeaccd0d00cf9fb9fe7483f3455482d77", [ null, {} @@ -726581,6 +727243,13 @@ ] ], "experimental-features": { + "focus-without-user-activation-default-permissions-policy.tentative.https.sub.html": [ + "9ca1426040c6edecba4200c92b53ff8ce6ee61cd", + [ + null, + {} + ] + ], "focus-without-user-activation-disabled-tentative.html": [ "3980fd1219cba990454ffa86e0a5bd493b9eb5e6", [ @@ -728978,7 +729647,7 @@ ] ], "pointerevent_sequence_at_implicit_release_on_click.html": [ - "bfcc8ad54a8d74bbc5a1a0fa7ae756b0f32c5d1b", + "1895765cd55407d84122c41ec1b3db2a9254a219", [ "pointerevents/pointerevent_sequence_at_implicit_release_on_click.html?mouse", { @@ -729198,7 +729867,7 @@ ] ], "pointerevent_touch-action-inherit_parent-none_touch.html": [ - "d927ed94b329f8e7487cd455aa264a0bd397b189", + "828864602c4a7698f3543416c0f52539caead23a", [ null, { @@ -729217,7 +729886,7 @@ ] ], "pointerevent_touch-action-modified_touch.html": [ - "a91022504a7ebf8dee21a368b5911285ef614e1c", + "9f0abd683709fb64d04c9afa32ce3bb129a46bc6", [ null, { @@ -730475,6 +731144,53 @@ ] } ] + ], + "supported-encodings.https.any.js": [ + "45b5ed1cba46c63c908d35d0391c844acc536c04", + [ + "push-api/supported-encodings.https.any.html", + { + "script_metadata": [ + [ + "global", + "window,worker" + ] + ] + } + ], + [ + "push-api/supported-encodings.https.any.serviceworker.html", + { + "script_metadata": [ + [ + "global", + "window,worker" + ] + ] + } + ], + [ + "push-api/supported-encodings.https.any.sharedworker.html", + { + "script_metadata": [ + [ + "global", + "window,worker" + ] + ] + } + ], + [ + "push-api/supported-encodings.https.any.worker.html", + { + "script_metadata": [ + [ + "global", + "window,worker" + ] + ] + } + ] ] }, "quirks": { @@ -754294,6 +755010,48 @@ {} ] ], + "select-url-saved-query-cross-origin-multi-query.tentative.https.sub.html": [ + "7738d90fa69dd7c5c16f601da1aa1e72f7266c25", + [ + null, + {} + ] + ], + "select-url-saved-query-key-tuples.tentative.https.sub.html": [ + "05bc807b868239126b1f0fbaa8db9c2c690c2b00", + [ + null, + {} + ] + ], + "select-url-saved-query-rejection.tentative.https.sub.html": [ + "819b5e5166a1970ff543583a7fb0a75e7d7821b5", + [ + null, + {} + ] + ], + "select-url-saved-query-same-origin-multi-query.tentative.https.sub.html": [ + "9ee49bb2b25c90ec78a3fcd00da802c7d12d2f27", + [ + null, + {} + ] + ], + "select-url-saved-query-validate-index-after-retrieving.tentative.https.sub.html": [ + "f45ce4957c4644dc017be927e2d2b3b955b9500b", + [ + null, + {} + ] + ], + "select-url-saved-query-validate-index-before-storing.tentative.https.sub.html": [ + "5cb906e61d51fb6396fc757c261e73830dfc3594", + [ + null, + {} + ] + ], "set-exceed-former-entry-limit.tentative.https.html": [ "b78abbf1efd17711d2bffe641b83266c8f862e14", [ @@ -754570,6 +755328,34 @@ null, {} ] + ], + "select-url-saved-query-async.tentative.https.sub.html": [ + "f0d35f658b167f75e026ddaca33edb6ed43e1044", + [ + null, + {} + ] + ], + "select-url-saved-query-different-operation.tentative.https.sub.html": [ + "aec53bfccfed5c1d131cd8996e55d9b1b5142bcf", + [ + null, + {} + ] + ], + "select-url-saved-query-multi-frame.tentative.https.sub.html": [ + "c33e1d346aadb8108bcd77878102028bec3b9188", + [ + null, + {} + ] + ], + "select-url-saved-query.tentative.https.sub.html": [ + "0c33bd74fe9a8aace4cc8154bd57aa4643b10484", + [ + null, + {} + ] ] }, "signed-exchange": { @@ -768351,8 +769137,15 @@ ] }, "scripted": { + "getcharnumatposition-slr.tentative.html": [ + "a929d58ba144cc0f1fe6a60e0c7f7281fe5f8ca3", + [ + null, + {} + ] + ], "getcharnumatposition.html": [ - "779fb477b95d3bb90d2b9c8033f89641ba9c3ca1", + "f17369b3742eddddbee792e0a0d983c24052f0ef", [ null, {} @@ -768379,6 +769172,13 @@ {} ] ], + "getstartpositionofchar.html": [ + "5b09ea198a283324161ebaaac2f51b54ccdb8166", + [ + null, + {} + ] + ], "getsubstringlength-emoji-ligatures.html": [ "2b6061be5dbde360f259a3b3d3076ef21668961f", [ @@ -794089,7 +794889,7 @@ ] ], "byob_readtensor.https.any.js": [ - "f43cca0ea4eb7de5cdd3070cf4581bf90c1ae6a2", + "97bd666fa2cbf1dcd16dbeaeb836d9e8c7739aca", [ "webnn/conformance_tests/byob_readtensor.https.any.html?cpu", { @@ -796273,7 +797073,7 @@ ] ], "dequantizeLinear.https.any.js": [ - "8a04d0e6b8a36f1f4b5e3a0a9b04feec1acf7ab3", + "73dd916b9763160a6626c0781a4099c924aff183", [ "webnn/conformance_tests/dequantizeLinear.https.any.html?cpu", { @@ -812917,7 +813717,7 @@ ] ], "tensor.https.any.js": [ - "0bc51614608f514dbb3879fcb0bb468c88af9bb7", + "582ecdb9d68bddf2905414827622ba91799b4943", [ "webnn/conformance_tests/tensor.https.any.html?cpu", { @@ -814097,7 +814897,7 @@ ], "validation_tests": { "argMinMax.https.any.js": [ - "abd4e878a2a58978302491f50ae63107f258cedd", + "a6c74f1fb41b94cb0ea1e8164cdf4c17cc01af52", [ "webnn/validation_tests/argMinMax.https.any.html?cpu", { @@ -814286,7 +815086,7 @@ ] ], "batchNormalization.https.any.js": [ - "636f803ecb7ee32b0307cc3a8f465b8240513d9a", + "d503899a193741365a3495b3d8b52f8283adc11e", [ "webnn/validation_tests/batchNormalization.https.any.html?cpu", { @@ -814853,7 +815653,7 @@ ] ], "clamp.https.any.js": [ - "e76092daf43adb851c57890e8b332b21fd66ebb3", + "787c40fea604b85ecac360fe5d27d4ed9c0d3f9d", [ "webnn/validation_tests/clamp.https.any.html?cpu", { @@ -815231,7 +816031,7 @@ ] ], "concat.https.any.js": [ - "65c56a842461e655234f2003c4d3e530f3fd324a", + "6ccac4e7e8b5a311adc0b47cd85844bd2f7bae34", [ "webnn/validation_tests/concat.https.any.html?cpu", { @@ -815609,7 +816409,7 @@ ] ], "constant.https.any.js": [ - "fc0243197dba43d5e53052ebc56cc9ce12f281fb", + "dccb41d4b24037d8953ac57a3b2c183a2984107a", [ "webnn/validation_tests/constant.https.any.html?cpu", { @@ -815798,7 +816598,7 @@ ] ], "conv2d.https.any.js": [ - "405538ff4d8040e157a8c332f6a89816294c6e3c", + "eda93e38b2b499f95c7f50b4faf160a592776ab8", [ "webnn/validation_tests/conv2d.https.any.html?cpu", { @@ -815987,7 +816787,7 @@ ] ], "convTranspose2d.https.any.js": [ - "c128903e9cc51fc738067eb0bbc43d8e656dd1bf", + "cafb0e86e44a7d544e7c5f4330f09e4c0c618099", [ "webnn/validation_tests/convTranspose2d.https.any.html?cpu", { @@ -816365,7 +817165,7 @@ ] ], "cumulativeSum.https.any.js": [ - "6381d674ab4e9503805f9aa0529d940d491f79b5", + "9e6a22d825bc7a2f33997a52d36536209bd548f3", [ "webnn/validation_tests/cumulativeSum.https.any.html?cpu", { @@ -816554,7 +817354,7 @@ ] ], "dequantizeLinear.https.any.js": [ - "a5e6c8ea50e199da2b90d6a6873ccc490403c71e", + "d0dd2c15dfff2d63c7a1f165770dd8b9543ccf5e", [ "webnn/validation_tests/dequantizeLinear.https.any.html?cpu", { @@ -817133,7 +817933,7 @@ ] ], "elementwise-binary.https.any.js": [ - "e578a343468f018e57f5fa37941c1915647084d4", + "32777f84681a9e621993d78f4395a31b47a6272e", [ "webnn/validation_tests/elementwise-binary.https.any.html?cpu", { @@ -817700,7 +818500,7 @@ ] ], "elu.https.any.js": [ - "4fe08b1b0cef1837431d23d9225f9a34792c63e5", + "5ddcdaf8484b604e5dafdb597f6bc97fba7427fc", [ "webnn/validation_tests/elu.https.any.html?cpu", { @@ -817889,7 +818689,7 @@ ] ], "expand.https.any.js": [ - "23fe94aedc1eb18e5c0a98bc50e49a2bf15eba2b", + "c9c60358917f8b961ea45adfa251744458b8fe51", [ "webnn/validation_tests/expand.https.any.html?cpu", { @@ -818078,7 +818878,7 @@ ] ], "gather.https.any.js": [ - "dbeacbfc2791f0211358700d22d1ce4e41e1339b", + "e4a46a90d4b363783bc9020074d8d261ff59a28b", [ "webnn/validation_tests/gather.https.any.html?cpu", { @@ -818267,7 +819067,7 @@ ] ], "gatherElements.https.any.js": [ - "4c4b04490e8b6cacaba20806ec988c8d5d4ba620", + "e30e4a5a13b1b8df6861266039a95c6f07f3a16f", [ "webnn/validation_tests/gatherElements.https.any.html?cpu", { @@ -818456,7 +819256,7 @@ ] ], "gatherND.https.any.js": [ - "a8bfa2b336bf56238014665a70ca46ac00b6c541", + "697dda00776404cbe8bba31de89907cabb389a64", [ "webnn/validation_tests/gatherND.https.any.html?cpu", { @@ -818834,7 +819634,7 @@ ] ], "gemm.https.any.js": [ - "cad1806b5ff918b82b75f83a79f082a3f97edc6e", + "6115003d0392bbee3fb396052534f106bc6d86f2", [ "webnn/validation_tests/gemm.https.any.html?cpu", { @@ -819023,7 +819823,7 @@ ] ], "gru.https.any.js": [ - "158384a4b78777f552ce68a09c0fea4f085b473d", + "e074a27648f0917f0540dbb0fbaeb5c922f776a0", [ "webnn/validation_tests/gru.https.any.html?cpu", { @@ -819212,7 +820012,7 @@ ] ], "gruCell.https.any.js": [ - "7bbb9afcff0eac56813336ac66f641be73fd6c8b", + "b176b379330440766c323c9e05154f86e0b6f9af", [ "webnn/validation_tests/gruCell.https.any.html?cpu", { @@ -819401,7 +820201,7 @@ ] ], "hardSigmoid.https.any.js": [ - "8134863a3112c8caed6f1e4845c28ea3e2799975", + "f3a9ea0ba0e81cb8da1032d8b7a7df0d0727322a", [ "webnn/validation_tests/hardSigmoid.https.any.html?cpu", { @@ -819779,7 +820579,7 @@ ] ], "input.https.any.js": [ - "b5b257d8bb02a2a93bf4af2c86d7944298530fc3", + "cc60c44567046b2bf41ae50eb1d0fd732364dfb5", [ "webnn/validation_tests/input.https.any.html?cpu", { @@ -819968,7 +820768,7 @@ ] ], "instanceNormalization.https.any.js": [ - "618be23fdec86a317c79f018567bd4a3478c05fd", + "f09e67da414b6a61d290036494dadf37763a24a6", [ "webnn/validation_tests/instanceNormalization.https.any.html?cpu", { @@ -820346,7 +821146,7 @@ ] ], "layerNormalization.https.any.js": [ - "97bb479f04d4ae054fcec82fcada7c72b8d2982b", + "445bace965193d9686b9a63b8dd16626e6d59f81", [ "webnn/validation_tests/layerNormalization.https.any.html?cpu", { @@ -820535,7 +821335,7 @@ ] ], "leakyRelu.https.any.js": [ - "c49ac659ef4d7de696f066e04dcaced764c8e482", + "b64d7681d93aea4939dadb8396b83f946b40510c", [ "webnn/validation_tests/leakyRelu.https.any.html?cpu", { @@ -820724,7 +821524,7 @@ ] ], "linear.https.any.js": [ - "816dad35039a307cbf7365140e9d42ecc2b4d42e", + "d904b9290ff24a5de3102c644c64ecc01dc664c2", [ "webnn/validation_tests/linear.https.any.html?cpu", { @@ -820913,7 +821713,7 @@ ] ], "lstm.https.any.js": [ - "8cc2a014a7c4aa4f19ca75778f2b7b0a700479d3", + "8d8175ecb0988e798a4dc62c9b132f1f070f53e7", [ "webnn/validation_tests/lstm.https.any.html?cpu", { @@ -821102,7 +821902,7 @@ ] ], "lstmCell.https.any.js": [ - "a739761d56ea7e8ac0cb7cd1547942b018a13d2a", + "a4e15af1b25f8f106acaa2062f48cc0d930da953", [ "webnn/validation_tests/lstmCell.https.any.html?cpu", { @@ -821291,7 +822091,7 @@ ] ], "matmul.https.any.js": [ - "4f8a1ee59a3816c93c992b2c29c6a4d6f14d8d2d", + "86440e2b0f1c97585186fab868468abdc2762d47", [ "webnn/validation_tests/matmul.https.any.html?cpu", { @@ -821480,7 +822280,7 @@ ] ], "pad.https.any.js": [ - "b45f68ab0141149ecb0ec49e29bad1fcd0cc4efe", + "ca11bd2c9695a4783b1cda24ed9dc96b38523ea3", [ "webnn/validation_tests/pad.https.any.html?cpu", { @@ -821669,7 +822469,7 @@ ] ], "pooling-and-reduction-keep-dims.https.any.js": [ - "3beee94cd44dcd6898357a0530ad1b8728d644f0", + "969c5c61a498e14df5b45ebe3166f105708a73f4", [ "webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.html?cpu", { @@ -821912,7 +822712,7 @@ ] ], "pooling.https.any.js": [ - "d862d807ab443a90fff9b671eeec23d2bdab0c8a", + "e02d41e996be42d441b503d634e043c813ea4d71", [ "webnn/validation_tests/pooling.https.any.html?cpu", { @@ -822101,7 +822901,7 @@ ] ], "prelu.https.any.js": [ - "94eb6995374e651c5af79b407e7706547ca5d437", + "e3a43c61d8d97b1984783042f244f91626e20827", [ "webnn/validation_tests/prelu.https.any.html?cpu", { @@ -822290,7 +823090,7 @@ ] ], "quantizeLinear.https.any.js": [ - "2f0b21d225a8cbda190f29b8c2471e5c6ceec7de", + "42b8ac4b1f2c36f9611db528e01ce465f194de6a", [ "webnn/validation_tests/quantizeLinear.https.any.html?cpu", { @@ -822479,7 +823279,7 @@ ] ], "reduction.https.any.js": [ - "b56306351f05e60ae37b2ab2a4d22d6853c6dd52", + "d872b7fb4f0393173e2316fe508b7cd64116d75f", [ "webnn/validation_tests/reduction.https.any.html?cpu", { @@ -822857,7 +823657,7 @@ ] ], "resample2d.https.any.js": [ - "df2b85d02de25a7577baa01f6e3a5cae309445da", + "1278143d232f0594d876f17b2ac359946ba76a6c", [ "webnn/validation_tests/resample2d.https.any.html?cpu", { @@ -823046,7 +823846,7 @@ ] ], "reshape.https.any.js": [ - "7e49cada67a20702faf2dafe3efee5a87525f59a", + "67c895be9b788159938003247c015aea9821db5c", [ "webnn/validation_tests/reshape.https.any.html?cpu", { @@ -823235,7 +824035,7 @@ ] ], "scatterElements.https.any.js": [ - "15551b2bbe5b48bb50813ee02a69b75351aed8ba", + "39e99ddfdfc7f6a0b37bd0b5ca1f3bc2df04b708", [ "webnn/validation_tests/scatterElements.https.any.html?cpu", { @@ -823424,7 +824224,7 @@ ] ], "scatterND.https.any.js": [ - "5e28471fffa47aa985bc2d6a681156a029f7661b", + "e529aea52ee213a2108ed21c9c1b1beb9d9e4663", [ "webnn/validation_tests/scatterND.https.any.html?cpu", { @@ -823802,7 +824602,7 @@ ] ], "slice.https.any.js": [ - "3fb3cdcd6f67a81aec49fe221c279c8f1c36d7d5", + "cc442d3d2b195867dad46178c6080754f42ee545", [ "webnn/validation_tests/slice.https.any.html?cpu", { @@ -823991,7 +824791,7 @@ ] ], "softmax.https.any.js": [ - "4a5ee563070fb7ac1c17930f8140cae91b6cb125", + "eb7ebbd3070c37a274f01183ba495a13f3de811a", [ "webnn/validation_tests/softmax.https.any.html?cpu", { @@ -824558,7 +825358,7 @@ ] ], "split.https.any.js": [ - "c25f839168d39aa002d2e2ab6435f7075c593953", + "863e6a79c5f5761799c138b8682550bdd8684a31", [ "webnn/validation_tests/split.https.any.html?cpu", { @@ -824936,7 +825736,7 @@ ] ], "tile.https.any.js": [ - "6ad81cba4beb70b1d71c1c781aa032216f01b125", + "067335409178db5dc46e22b64f327b00a952bd68", [ "webnn/validation_tests/tile.https.any.html?cpu", { @@ -825125,7 +825925,7 @@ ] ], "transpose.https.any.js": [ - "a79e14008a6abe18abb56be37d968cace793f5a6", + "67a05ce057c587aee2e74454ba387544c3f90446", [ "webnn/validation_tests/transpose.https.any.html?cpu", { @@ -825503,7 +826303,7 @@ ] ], "where.https.any.js": [ - "2f1941556b1c3a3d8c04502e6f7e2beb5cdd0669", + "424d080c009d325384c134d6095228ce79a80b31", [ "webnn/validation_tests/where.https.any.html?cpu", { @@ -870567,15 +871367,6 @@ ] ] }, - "css-sizing": { - "replaced-fractional-height-from-aspect-ratio.html": [ - "d97c3f133ebec02ce5569e95826ab3237b7559c7", - [ - null, - {} - ] - ] - }, "css-text": { "text-align": { "text-align-end-018.html": [ @@ -873363,6 +874154,13 @@ {} ] ], + "navigation.py": [ + "825bca7e994ff0330147e5da394edb312a62ef84", + [ + null, + {} + ] + ], "pointer.py": [ "6109450a23c1d49215a2cc4ef8547789d568eb79", [ @@ -875094,7 +875892,7 @@ ] ], "fullscreen.py": [ - "f6e9e8792360c9069345a27d870f027ecaabf6cd", + "eb170369627b0662c779849e0818ed74fb00a321", [ null, {} @@ -875492,8 +876290,15 @@ ] }, "maximize_window": { + "from_minimized_window.py": [ + "ab33aeb963a1502e98e21b8bc3a5caddeb16978a", + [ + null, + {} + ] + ], "maximize.py": [ - "3a20a0d5589bd222c17530ad650311555d71ded9", + "6b9fc680b85b49cd6e86c0930989e7606e4aef1d", [ null, { @@ -875522,7 +876327,7 @@ }, "minimize_window": { "minimize.py": [ - "2ad5333ec54a79fd8306c17f093046a87b5aaf25", + "c4e15ad9a9cbc29f1cddda960214233b77c72ab3", [ null, { @@ -875576,7 +876381,7 @@ }, "new_session": { "create_alwaysMatch.py": [ - "64fd0a7425657fa0596298ec281ea4a1bbe08a4f", + "7a7f007dabb3188ac02893f3567ff805dab78b5b", [ null, { @@ -875585,7 +876390,7 @@ ] ], "create_firstMatch.py": [ - "d4523f4330c76e46fd9441901dc17314aec85c66", + "22c74bcfbd748d4eea838d22a5764fae2eaecdda", [ null, { @@ -875970,7 +876775,7 @@ ] ], "set.py": [ - "9e15d02b0d1953df3d22f7ff7b544f6e86cca1ea", + "51cddffed51d53b74be60424215f9d9cabd3474e", [ null, { diff --git a/tests/wpt/meta/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini b/tests/wpt/meta/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini new file mode 100644 index 00000000000..e7b745e50c3 --- /dev/null +++ b/tests/wpt/meta/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js.ini @@ -0,0 +1,4 @@ +[derive_key_and_encrypt.https.any.html] + expected: ERROR + +[derive_key_and_encrypt.https.any.worker.html] diff --git a/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video-sibling.html.ini b/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video-sibling.html.ini new file mode 100644 index 00000000000..55551102b45 --- /dev/null +++ b/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video-sibling.html.ini @@ -0,0 +1,2 @@ +[mix-blend-mode-video-sibling.html] + expected: FAIL diff --git a/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini b/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini new file mode 100644 index 00000000000..26726a1734d --- /dev/null +++ b/tests/wpt/meta/css/compositing/mix-blend-mode/mix-blend-mode-video.html.ini @@ -0,0 +1,2 @@ +[mix-blend-mode-video.html] + expected: FAIL diff --git a/tests/wpt/meta/css/css-cascade/scope-specificity.html.ini b/tests/wpt/meta/css/css-cascade/scope-specificity.html.ini index cf0b84e5101..dae34ee9f45 100644 --- a/tests/wpt/meta/css/css-cascade/scope-specificity.html.ini +++ b/tests/wpt/meta/css/css-cascade/scope-specificity.html.ini @@ -55,3 +55,6 @@ [@scope (#main) { > .a { } } and :where(#main) > .a] expected: FAIL + + [@scope { & .b { } } and :where(:scope) .b] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color-hdr/computed.html.ini b/tests/wpt/meta/css/css-color-hdr/computed.html.ini new file mode 100644 index 00000000000..8a0e56f83fc --- /dev/null +++ b/tests/wpt/meta/css/css-color-hdr/computed.html.ini @@ -0,0 +1,51 @@ +[computed.html] + [Property dynamic-range-limit value 'high'] + expected: FAIL + + [Property dynamic-range-limit value 'constrained-high'] + expected: FAIL + + [Property dynamic-range-limit value 'standard'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 75%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, high 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 25%, standard 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 100%, standard 100%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 80%, standard 60%, constrained-high 60%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, constrained-high 75%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(constrained-high 75%, standard 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(constrained-high 25%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 25%, constrained-high 50%, high 25%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(standard 10%, constrained-high 20%, high 20%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 10%, standard 30%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(dynamic-range-limit-mix(standard 10%, high 30%) 20%, standard 80%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(dynamic-range-limit-mix(standard 25%, high 75%) 20%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 40%, dynamic-range-limit-mix(constrained-high 25%, high 75%) 40%)'] + expected: FAIL + + [Property dynamic-range-limit value 'dynamic-range-limit-mix(high 10%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 20%, dynamic-range-limit-mix(constrained-high 10%, high 30%) 20%)'] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color-hdr/inheritance.html.ini b/tests/wpt/meta/css/css-color-hdr/inheritance.html.ini new file mode 100644 index 00000000000..b7307d0fe24 --- /dev/null +++ b/tests/wpt/meta/css/css-color-hdr/inheritance.html.ini @@ -0,0 +1,6 @@ +[inheritance.html] + [Property dynamic-range-limit has initial value high] + expected: FAIL + + [Property dynamic-range-limit inherits] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color-hdr/interpolation.html.ini b/tests/wpt/meta/css/css-color-hdr/interpolation.html.ini new file mode 100644 index 00000000000..8b0224cf3f4 --- /dev/null +++ b/tests/wpt/meta/css/css-color-hdr/interpolation.html.ini @@ -0,0 +1,192 @@ +[interpolation.html] + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0) should be [high\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.25) should be [dynamic-range-limit-mix(standard 25%, high 75%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 75%, high 25%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0) should be [constrained-high\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [constrained-high\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (0.75) should be [dynamic-range-limit-mix(standard 87.5%, high 12.5%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 50%, high 50%)\] to [standard\] at (1) should be [standard\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, high 50%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(standard 90%, high 10%)\] to [dynamic-range-limit-mix(standard 10%, high 90%)\] at (1) should be [dynamic-range-limit-mix(standard 10%, high 90%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Transitions: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Transitions with transition: all: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [CSS Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0) should be [dynamic-range-limit-mix(standard 10%, constrained-high 90%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (0.5) should be [dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)\]] + expected: FAIL + + [Web Animations: property <dynamic-range-limit> from [dynamic-range-limit-mix(constrained-high 90%, standard 10%)\] to [dynamic-range-limit-mix(high 10%, standard 90%)\] at (1) should be [dynamic-range-limit-mix(standard 90%, high 10%)\]] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color-hdr/parsing.html.ini b/tests/wpt/meta/css/css-color-hdr/parsing.html.ini new file mode 100644 index 00000000000..b5075cf660f --- /dev/null +++ b/tests/wpt/meta/css/css-color-hdr/parsing.html.ini @@ -0,0 +1,30 @@ +[parsing.html] + [e.style['dynamic-range-limit'\] = "standard" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "high" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "constrained-high" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 80%, standard 20%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 8%, standard 2%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 99%, standard 99%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(constrained-high 20%, high 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(dynamic-range-limit-mix(constrained-high 90%, high 10%) 1%, high 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(high 1%, dynamic-range-limit-mix(constrained-high 2%, high 10%) 80%)" should set the property value] + expected: FAIL + + [e.style['dynamic-range-limit'\] = "dynamic-range-limit-mix(dynamic-range-limit-mix(high 1%, standard 2%) 3%, dynamic-range-limit-mix(constrained-high 5%, high 5%) 6%)" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta/css/css-conditional/container-queries/registered-color-style-queries.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/registered-color-style-queries.html.ini index 3befc312c69..d4281d42b51 100644 --- a/tests/wpt/meta/css/css-conditional/container-queries/registered-color-style-queries.html.ini +++ b/tests/wpt/meta/css/css-conditional/container-queries/registered-color-style-queries.html.ini @@ -1,4 +1,5 @@ [registered-color-style-queries.html] + expected: ERROR [Registered color with light color-scheme and light-dark()] expected: FAIL diff --git a/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini index bf71bdf192b..132e4ea1fbc 100644 --- a/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini +++ b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html.ini @@ -1,2 +1,9 @@ [container-type-scroll-state-computed.html] - expected: ERROR + [Property container-type value 'scroll-state'] + expected: FAIL + + [Property container-type value 'scroll-state size'] + expected: FAIL + + [Property container-type value 'inline-size scroll-state'] + expected: FAIL diff --git a/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini new file mode 100644 index 00000000000..27cb88702ca --- /dev/null +++ b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-overflowing-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini new file mode 100644 index 00000000000..17708297d9b --- /dev/null +++ b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-snapped-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini new file mode 100644 index 00000000000..8ef346bc83c --- /dev/null +++ b/tests/wpt/meta/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html.ini @@ -0,0 +1,2 @@ +[scroll-state-stuck-pseudo.html] + expected: ERROR diff --git a/tests/wpt/meta/css/css-conditional/container-queries/style-query-document-element.html.ini b/tests/wpt/meta/css/css-conditional/container-queries/style-query-document-element.html.ini index d59e1b1536d..e0b2158c1b4 100644 --- a/tests/wpt/meta/css/css-conditional/container-queries/style-query-document-element.html.ini +++ b/tests/wpt/meta/css/css-conditional/container-queries/style-query-document-element.html.ini @@ -1,2 +1,3 @@ [style-query-document-element.html] - expected: ERROR + [style query should evaluate to true] + expected: FAIL diff --git a/tests/wpt/meta/css/css-conditional/js/supports-at-rule.tentative.html.ini b/tests/wpt/meta/css/css-conditional/js/supports-at-rule.tentative.html.ini new file mode 100644 index 00000000000..f8d0581c7c5 --- /dev/null +++ b/tests/wpt/meta/css/css-conditional/js/supports-at-rule.tentative.html.ini @@ -0,0 +1,120 @@ +[supports-at-rule.tentative.html] + [@supports at-rule] + expected: FAIL + + [@supports at-rule 1] + expected: FAIL + + [@supports at-rule 2] + expected: FAIL + + [@supports at-rule 3] + expected: FAIL + + [@supports at-rule 4] + expected: FAIL + + [@supports at-rule 6] + expected: FAIL + + [@supports at-rule 7] + expected: FAIL + + [@supports at-rule 8] + expected: FAIL + + [quoted value is OK] + expected: FAIL + + [implicit end parenthesis] + expected: FAIL + + [@supports at-rule 16] + expected: FAIL + + [@supports at-rule 17] + expected: FAIL + + [@supports at-rule 18] + expected: FAIL + + [@supports at-rule 19] + expected: FAIL + + [@supports at-rule 20] + expected: FAIL + + [@supports at-rule 21] + expected: FAIL + + [@supports at-rule 22] + expected: FAIL + + [@supports at-rule 23] + expected: FAIL + + [@supports at-rule 24] + expected: FAIL + + [@supports at-rule 25] + expected: FAIL + + [@supports at-rule 26] + expected: FAIL + + [@supports at-rule 27] + expected: FAIL + + [@supports at-rule 28] + expected: FAIL + + [@supports at-rule 30] + expected: FAIL + + [@supports at-rule 31] + expected: FAIL + + [@supports at-rule 32] + expected: FAIL + + [@supports at-rule 33] + expected: FAIL + + [@supports at-rule 34] + expected: FAIL + + [@supports at-rule 35] + expected: FAIL + + [@supports at-rule 36] + expected: FAIL + + [@supports at-rule 37] + expected: FAIL + + [@supports at-rule 38] + expected: FAIL + + [@supports at-rule 39] + expected: FAIL + + [@supports at-rule 40] + expected: FAIL + + [@supports at-rule 41] + expected: FAIL + + [@supports at-rule 42] + expected: FAIL + + [@supports at-rule 43] + expected: FAIL + + [@supports at-rule 44] + expected: FAIL + + [@supports at-rule 45] + expected: FAIL + + [@supports at-rule 46] + expected: FAIL diff --git a/tests/wpt/meta/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini b/tests/wpt/meta/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini index 32b5d8d7680..d41dbcf0823 100644 --- a/tests/wpt/meta/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini +++ b/tests/wpt/meta/css/css-grid/layout-algorithm/grid-fit-content-percentage.html.ini @@ -28,3 +28,63 @@ [fit-content(calc(0px + 150%))] expected: FAIL + + [fit-content(0%); min-width: 0px] + expected: FAIL + + [fit-content(50%); min-width: 0px] + expected: FAIL + + [fit-content(75%); min-width: 0px] + expected: FAIL + + [fit-content(100%); min-width: 0px] + expected: FAIL + + [fit-content(150%); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 0%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 50%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 75%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 100%)); min-width: 0px] + expected: FAIL + + [fit-content(calc(0px + 150%)); min-width: 0px] + expected: FAIL + + [fit-content(0%); min-width: auto] + expected: FAIL + + [fit-content(50%); min-width: auto] + expected: FAIL + + [fit-content(75%); min-width: auto] + expected: FAIL + + [fit-content(100%); min-width: auto] + expected: FAIL + + [fit-content(150%); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 0%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 50%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 75%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 100%)); min-width: auto] + expected: FAIL + + [fit-content(calc(0px + 150%)); min-width: auto] + expected: FAIL diff --git a/tests/wpt/meta/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini b/tests/wpt/meta/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini new file mode 100644 index 00000000000..0303c3c39d8 --- /dev/null +++ b/tests/wpt/meta/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html.ini @@ -0,0 +1,18 @@ +[the-select-arrow-pseudo-element.tentative.html] + ["::select-arrow" should be a valid selector] + expected: FAIL + + ["*::select-arrow" should be a valid selector] + expected: FAIL + + ["foo.bar[baz\]::select-arrow" should be a valid selector] + expected: FAIL + + ["::select-arrow::marker" should be a valid selector] + expected: FAIL + + ["::slotted(*)::select-arrow" should be a valid selector] + expected: FAIL + + ["::part(foo)::select-arrow" should be a valid selector] + expected: FAIL diff --git a/tests/wpt/meta/css/css-sizing/stretch/auto-margins-1.html.ini b/tests/wpt/meta/css/css-sizing/stretch/auto-margins-1.html.ini new file mode 100644 index 00000000000..5030c8126ba --- /dev/null +++ b/tests/wpt/meta/css/css-sizing/stretch/auto-margins-1.html.ini @@ -0,0 +1,3 @@ +[auto-margins-1.html] + [[data-expected-width\] 2] + expected: FAIL diff --git a/tests/wpt/meta/css/css-sizing/stretch/indefinite-4.html.ini b/tests/wpt/meta/css/css-sizing/stretch/indefinite-4.html.ini new file mode 100644 index 00000000000..d0bd94e4cbe --- /dev/null +++ b/tests/wpt/meta/css/css-sizing/stretch/indefinite-4.html.ini @@ -0,0 +1,3 @@ +[indefinite-4.html] + [[data-expected-client-height\] 1] + expected: FAIL diff --git a/tests/wpt/meta/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini b/tests/wpt/meta/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini new file mode 100644 index 00000000000..d981ffe23af --- /dev/null +++ b/tests/wpt/meta/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html.ini @@ -0,0 +1,2 @@ +[segment-break-transformation-ignorable-1.html] + expected: FAIL diff --git a/tests/wpt/meta/css/css-values/attr-IACVT.html.ini b/tests/wpt/meta/css/css-values/attr-IACVT.html.ini new file mode 100644 index 00000000000..7d7e1ecd848 --- /dev/null +++ b/tests/wpt/meta/css/css-values/attr-IACVT.html.ini @@ -0,0 +1,3 @@ +[attr-IACVT.html] + [CSS Values Test: attr() IACVT] + expected: FAIL diff --git a/tests/wpt/meta/css/css-values/attr-all-types.html.ini b/tests/wpt/meta/css/css-values/attr-all-types.html.ini index 2239863f502..4a56492d36e 100644 --- a/tests/wpt/meta/css/css-values/attr-all-types.html.ini +++ b/tests/wpt/meta/css/css-values/attr-all-types.html.ini @@ -38,9 +38,6 @@ [CSS Values and Units Test: attr 13] expected: FAIL - [CSS Values and Units Test: attr 14] - expected: FAIL - [CSS Values and Units Test: attr 18] expected: FAIL @@ -59,57 +56,6 @@ [CSS Values and Units Test: attr 38] expected: FAIL - [CSS Values and Units Test: attr 39] - expected: FAIL - - [CSS Values and Units Test: attr 40] - expected: FAIL - - [CSS Values and Units Test: attr 41] - expected: FAIL - - [CSS Values and Units Test: attr 42] - expected: FAIL - - [CSS Values and Units Test: attr 43] - expected: FAIL - - [CSS Values and Units Test: attr 44] - expected: FAIL - - [CSS Values and Units Test: attr 45] - expected: FAIL - - [CSS Values and Units Test: attr 46] - expected: FAIL - - [CSS Values and Units Test: attr 47] - expected: FAIL - - [CSS Values and Units Test: attr 48] - expected: FAIL - - [CSS Values and Units Test: attr 49] - expected: FAIL - - [CSS Values and Units Test: attr 50] - expected: FAIL - - [CSS Values and Units Test: attr 51] - expected: FAIL - - [CSS Values and Units Test: attr 52] - expected: FAIL - - [CSS Values and Units Test: attr 53] - expected: FAIL - - [CSS Values and Units Test: attr 54] - expected: FAIL - - [CSS Values and Units Test: attr 55] - expected: FAIL - [CSS Values and Units Test: attr 12] expected: FAIL @@ -122,21 +68,6 @@ [CSS Values and Units Test: attr 24] expected: FAIL - [CSS Values and Units Test: attr 56] - expected: FAIL - - [CSS Values and Units Test: attr 57] - expected: FAIL - - [CSS Values and Units Test: attr 58] - expected: FAIL - - [CSS Values and Units Test: attr 59] - expected: FAIL - - [CSS Values and Units Test: attr 60] - expected: FAIL - [CSS Values and Units Test: attr 15] expected: FAIL @@ -155,35 +86,32 @@ [CSS Values and Units Test: attr 27] expected: FAIL - [CSS Values and Units Test: attr 31] - expected: FAIL - [CSS Values and Units Test: attr 32] expected: FAIL - [CSS Values and Units Test: attr 61] + [CSS Values and Units Test: attr 74] expected: FAIL - [CSS Values and Units Test: attr 62] + [CSS Values and Units Test: attr 75] expected: FAIL - [CSS Values and Units Test: attr 63] + [CSS Values and Units Test: attr 76] expected: FAIL - [CSS Values and Units Test: attr 74] + [CSS Values and Units Test: attr 77] expected: FAIL - [CSS Values and Units Test: attr 75] + [CSS Values and Units Test: attr 22] expected: FAIL - [CSS Values and Units Test: attr 64] + [CSS Values and Units Test: attr 23] expected: FAIL - [CSS Values and Units Test: attr 65] + [CSS Values and Units Test: attr 30] expected: FAIL - [CSS Values and Units Test: attr 76] + [CSS Values and Units Test: attr 34] expected: FAIL - [CSS Values and Units Test: attr 77] + [CSS Values and Units Test: attr 35] expected: FAIL diff --git a/tests/wpt/meta/css/css-values/attr-px-invalid-cast.html.ini b/tests/wpt/meta/css/css-values/attr-px-invalid-cast.html.ini deleted file mode 100644 index 87888f53efd..00000000000 --- a/tests/wpt/meta/css/css-values/attr-px-invalid-cast.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[attr-px-invalid-cast.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-values/attr-px-valid.html.ini b/tests/wpt/meta/css/css-values/attr-px-valid.html.ini deleted file mode 100644 index 7bcf98b2d8a..00000000000 --- a/tests/wpt/meta/css/css-values/attr-px-valid.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[attr-px-valid.html] - expected: FAIL diff --git a/tests/wpt/meta/css/css-values/signs-abs-computed.html.ini b/tests/wpt/meta/css/css-values/signs-abs-computed.html.ini index e2069e297af..ece49b5a44a 100644 --- a/tests/wpt/meta/css/css-values/signs-abs-computed.html.ini +++ b/tests/wpt/meta/css/css-values/signs-abs-computed.html.ini @@ -136,3 +136,66 @@ [sign(10px - 2em) should be used-value-equivalent to -1; fontSize=10px] expected: FAIL + + [calc(2.5 - sign(41px - 2em) / 2) should be used-value-equivalent to 2] + expected: FAIL + + [calc(2.5 - sign(40px - 2em) / 2) should be used-value-equivalent to 2.5] + expected: FAIL + + [calc(2.5 - sign(39px - 2em) / 2) should be used-value-equivalent to 3] + expected: FAIL + + [calc(3 + sign(42px - 2em)) should be used-value-equivalent to 4] + expected: FAIL + + [calc(3 + sign(40px - 2em)) should be used-value-equivalent to 3] + expected: FAIL + + [calc(3 + sign(38px - 2em)) should be used-value-equivalent to 2] + expected: FAIL + + [calc(90deg + 30deg * sign(42px - 2em)) should be used-value-equivalent to 120deg] + expected: FAIL + + [calc(90deg + 30deg * sign(40px - 2em)) should be used-value-equivalent to 90deg] + expected: FAIL + + [calc(90deg + 30deg * sign(38px - 2em)) should be used-value-equivalent to 60deg] + expected: FAIL + + [calc(5s + 15s * sign(42px - 2em)) should be used-value-equivalent to 20s] + expected: FAIL + + [calc(5s + 15s * sign(40px - 2em)) should be used-value-equivalent to 5s] + expected: FAIL + + [calc(5s + 15s * sign(38px - 2em)) should be used-value-equivalent to -10s] + expected: FAIL + + [calc(100dpi + 20dpi * sign(42px - 2em)) should be used-value-equivalent to 120dpi] + expected: FAIL + + [calc(100dpi + 20dpi * sign(40px - 2em)) should be used-value-equivalent to 100dpi] + expected: FAIL + + [calc(100dpi + 20dpi * sign(38px - 2em)) should be used-value-equivalent to 80dpi] + expected: FAIL + + [calc(3fr + 1fr * sign(42px - 2em)) should be used-value-equivalent to 4fr] + expected: FAIL + + [calc(3fr + 1fr * sign(40px - 2em)) should be used-value-equivalent to 3fr] + expected: FAIL + + [calc(3fr + 1fr * sign(38px - 2em)) should be used-value-equivalent to 2fr] + expected: FAIL + + [calc(2.5 - sign(33px - 2rem) / 2) should be used-value-equivalent to 2] + expected: FAIL + + [calc(2.5 - sign(32px - 2rem) / 2) should be used-value-equivalent to 2.5] + expected: FAIL + + [calc(2.5 - sign(31px - 2rem) / 2) should be used-value-equivalent to 3] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..d1cd1865181 --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-always-matches-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..a22a798704c --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-always-matches-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..27ecadf65ec --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..254d5774e11 --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..ab06ad7b0cc --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-negated-first-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini b/tests/wpt/meta/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini new file mode 100644 index 00000000000..75d4f82effe --- /dev/null +++ b/tests/wpt/meta/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html.ini @@ -0,0 +1,2 @@ +[negated-negated-last-of-type-when-ancestor-changes.html] + expected: FAIL diff --git a/tests/wpt/meta/custom-elements/ElementInternals-accessibility.tentative.html.ini b/tests/wpt/meta/custom-elements/ElementInternals-accessibility.tentative.html.ini new file mode 100644 index 00000000000..e888efbcc55 --- /dev/null +++ b/tests/wpt/meta/custom-elements/ElementInternals-accessibility.tentative.html.ini @@ -0,0 +1,9 @@ +[ElementInternals-accessibility.tentative.html] + [ariaColIndexText is defined in ElementInternals] + expected: FAIL + + [ariaDescription is defined in ElementInternals] + expected: FAIL + + [ariaRowIndexText is defined in ElementInternals] + expected: FAIL diff --git a/tests/wpt/meta/dom/abort/AbortSignal.any.js.ini b/tests/wpt/meta/dom/abort/AbortSignal.any.js.ini index 477da6cc050..5c57b72c1c3 100644 --- a/tests/wpt/meta/dom/abort/AbortSignal.any.js.ini +++ b/tests/wpt/meta/dom/abort/AbortSignal.any.js.ini @@ -30,3 +30,7 @@ [AbortSignal timeouts fire in order] expected: FAIL + + +[AbortSignal.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta/dom/abort/event.any.js.ini b/tests/wpt/meta/dom/abort/event.any.js.ini index b7fdb742a6e..7641e92134c 100644 --- a/tests/wpt/meta/dom/abort/event.any.js.ini +++ b/tests/wpt/meta/dom/abort/event.any.js.ini @@ -96,3 +96,7 @@ [AbortController.signal.reason returns the same DOMException] expected: FAIL + + +[event.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta/dom/abort/timeout-shadowrealm.any.js.ini b/tests/wpt/meta/dom/abort/timeout-shadowrealm.any.js.ini new file mode 100644 index 00000000000..2a8e04706a9 --- /dev/null +++ b/tests/wpt/meta/dom/abort/timeout-shadowrealm.any.js.ini @@ -0,0 +1,2 @@ +[timeout-shadowrealm.any.shadowrealm.html] + expected: ERROR diff --git a/tests/wpt/meta/dom/abort/timeout.any.js.ini b/tests/wpt/meta/dom/abort/timeout.any.js.ini new file mode 100644 index 00000000000..624b6a502c3 --- /dev/null +++ b/tests/wpt/meta/dom/abort/timeout.any.js.ini @@ -0,0 +1,20 @@ +[timeout.any.html] + [AbortSignal.timeout() returns a non-aborted signal] + expected: FAIL + + [Signal returned by AbortSignal.timeout() times out] + expected: FAIL + + [AbortSignal timeouts fire in order] + expected: FAIL + + +[timeout.any.worker.html] + [AbortSignal.timeout() returns a non-aborted signal] + expected: FAIL + + [Signal returned by AbortSignal.timeout() times out] + expected: FAIL + + [AbortSignal timeouts fire in order] + expected: FAIL diff --git a/tests/wpt/meta/dom/nodes/moveBefore/tentative/focus-within.html.ini b/tests/wpt/meta/dom/nodes/moveBefore/tentative/focus-within.html.ini new file mode 100644 index 00000000000..e7448213aa1 --- /dev/null +++ b/tests/wpt/meta/dom/nodes/moveBefore/tentative/focus-within.html.ini @@ -0,0 +1,15 @@ +[focus-within.html] + [focus-within should be updated when reparenting focused element directly] + expected: FAIL + + [focus-within should be updated when reparenting an element that has focus within] + expected: FAIL + + [focus-within should remain the same when moving to the same parent] + expected: FAIL + + [:focus-within should be eventually up to date when moving to an inert subtree] + expected: FAIL + + [:focus-within should be eventually up to date when moving to a subtree that would become inert via style] + expected: FAIL diff --git a/tests/wpt/meta/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini b/tests/wpt/meta/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini index 37454f3ed97..4dcac5c96b4 100644 --- a/tests/wpt/meta/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini +++ b/tests/wpt/meta/fetch/metadata/generated/css-font-face.https.sub.tentative.html.ini @@ -46,3 +46,6 @@ [sec-fetch-user] expected: FAIL + + [sec-fetch-dest] + expected: FAIL diff --git a/tests/wpt/meta/fullscreen/crashtests/chrome-1312699.html.ini b/tests/wpt/meta/fullscreen/crashtests/chrome-1312699.html.ini deleted file mode 100644 index f1efc6d3c4c..00000000000 --- a/tests/wpt/meta/fullscreen/crashtests/chrome-1312699.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[chrome-1312699.html] - expected: TIMEOUT diff --git a/tests/wpt/meta/fullscreen/crashtests/content-visibility-crash.html.ini b/tests/wpt/meta/fullscreen/crashtests/content-visibility-crash.html.ini deleted file mode 100644 index 39620c6a4e9..00000000000 --- a/tests/wpt/meta/fullscreen/crashtests/content-visibility-crash.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[content-visibility-crash.html] - expected: TIMEOUT
\ No newline at end of file diff --git a/tests/wpt/meta/fullscreen/rendering/backdrop-iframe.html.ini b/tests/wpt/meta/fullscreen/rendering/backdrop-iframe.html.ini deleted file mode 100644 index 70d926570da..00000000000 --- a/tests/wpt/meta/fullscreen/rendering/backdrop-iframe.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-iframe.html] - expected: TIMEOUT diff --git a/tests/wpt/meta/fullscreen/rendering/backdrop-inherit.html.ini b/tests/wpt/meta/fullscreen/rendering/backdrop-inherit.html.ini deleted file mode 100644 index 9de3b56d1e9..00000000000 --- a/tests/wpt/meta/fullscreen/rendering/backdrop-inherit.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-inherit.html] - expected: TIMEOUT diff --git a/tests/wpt/meta/fullscreen/rendering/backdrop-object.html.ini b/tests/wpt/meta/fullscreen/rendering/backdrop-object.html.ini deleted file mode 100644 index 46e7b6f55cd..00000000000 --- a/tests/wpt/meta/fullscreen/rendering/backdrop-object.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[backdrop-object.html] - expected: TIMEOUT diff --git a/tests/wpt/meta/fullscreen/rendering/fullscreen-root-fills-page.html.ini b/tests/wpt/meta/fullscreen/rendering/fullscreen-root-fills-page.html.ini deleted file mode 100644 index cf9995f8551..00000000000 --- a/tests/wpt/meta/fullscreen/rendering/fullscreen-root-fills-page.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[fullscreen-root-fills-page.html] - expected: TIMEOUT diff --git a/tests/wpt/meta/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini b/tests/wpt/meta/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini deleted file mode 100644 index 5d17a8e9419..00000000000 --- a/tests/wpt/meta/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[traverse_the_history_2.html] - [Multiple history traversals, last would be aborted] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini b/tests/wpt/meta/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini new file mode 100644 index 00000000000..1f345b780e6 --- /dev/null +++ b/tests/wpt/meta/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js.ini deleted file mode 100644 index 92758eb9bd1..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.no_shadow.drawImage.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js.ini deleted file mode 100644 index e619d9eb9ee..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.no_shadow.fillRect.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js.ini deleted file mode 100644 index bee6d9d0775..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.no_shadow.pattern.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js.ini deleted file mode 100644 index a798b37c417..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.shadow.drawImage.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js.ini deleted file mode 100644 index 33a8dc42b8b..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.shadow.fillRect.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js.ini b/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js.ini deleted file mode 100644 index b5d883b658d..00000000000 --- a/tests/wpt/meta/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js.ini +++ /dev/null @@ -1,78 +0,0 @@ -[2d.composite.grid.no_filter.shadow.pattern.worker.html] - [2d] - expected: FAIL - - [2d 1] - expected: FAIL - - [2d 2] - expected: FAIL - - [2d 3] - expected: FAIL - - [2d 4] - expected: FAIL - - [2d 5] - expected: FAIL - - [2d 6] - expected: FAIL - - [2d 7] - expected: FAIL - - [2d 8] - expected: FAIL - - [2d 9] - expected: FAIL - - [2d 10] - expected: FAIL - - [2d 11] - expected: FAIL - - [2d 12] - expected: FAIL - - [2d 13] - expected: FAIL - - [2d 14] - expected: FAIL - - [2d 15] - expected: FAIL - - [2d 16] - expected: FAIL - - [2d 17] - expected: FAIL - - [2d 18] - expected: FAIL - - [2d 19] - expected: FAIL - - [2d 20] - expected: FAIL - - [2d 21] - expected: FAIL - - [2d 22] - expected: FAIL - - [2d 23] - expected: FAIL - - [2d 24] - expected: FAIL - - [2d 25] - expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini b/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini new file mode 100644 index 00000000000..1f345b780e6 --- /dev/null +++ b/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html] + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini b/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini new file mode 100644 index 00000000000..a691585df81 --- /dev/null +++ b/tests/wpt/meta/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html.ini @@ -0,0 +1,2 @@ +[2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html] + expected: TIMEOUT diff --git a/tests/wpt/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini b/tests/wpt/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini index ccdaf8d61b2..ff6467094b8 100644 --- a/tests/wpt/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini +++ b/tests/wpt/meta/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini @@ -1,3 +1,3 @@ [iframe_sandbox_popups_nonescaping-3.html] [Check that popups from a sandboxed iframe do not escape the sandbox] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html.ini b/tests/wpt/meta/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html.ini index 7682a4830bf..7682a4830bf 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html.ini +++ b/tests/wpt/meta/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html.ini diff --git a/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini b/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini new file mode 100644 index 00000000000..3518ca4269d --- /dev/null +++ b/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html.ini @@ -0,0 +1,3 @@ +[dialog-active-document.html] + [showModal should throw when the document isn't active] + expected: FAIL diff --git a/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini b/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini index 7dbee00b55c..3a548c186fb 100644 --- a/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini +++ b/tests/wpt/meta/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html.ini @@ -28,3 +28,6 @@ [Although the document is not attached to any pages, showModal() should execute as normal.] expected: FAIL + + [When the document is not attached to any pages, showModal() should throw.] + expected: FAIL diff --git a/tests/wpt/meta/html/semantics/popovers/popover-active-document.html.ini b/tests/wpt/meta/html/semantics/popovers/popover-active-document.html.ini new file mode 100644 index 00000000000..8ddd6a4539e --- /dev/null +++ b/tests/wpt/meta/html/semantics/popovers/popover-active-document.html.ini @@ -0,0 +1,3 @@ +[popover-active-document.html] + [showPopover should throw when the document isn't active] + expected: FAIL diff --git a/tests/wpt/meta/html/semantics/popovers/popover-minimum-role.html.ini b/tests/wpt/meta/html/semantics/popovers/popover-minimum-role.html.ini new file mode 100644 index 00000000000..1ae0c3961a0 --- /dev/null +++ b/tests/wpt/meta/html/semantics/popovers/popover-minimum-role.html.ini @@ -0,0 +1,6 @@ +[popover-minimum-role.html] + [If specified on an element with an implicit role of generic, then the element's role instead maps to group.] + expected: FAIL + + [Dynamic changes to popover attribute should change the role.] + expected: FAIL diff --git a/tests/wpt/meta/webmessaging/with-ports/017.html.ini b/tests/wpt/meta/webmessaging/with-ports/017.html.ini deleted file mode 100644 index c7946fc91b4..00000000000 --- a/tests/wpt/meta/webmessaging/with-ports/017.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[017.html] - expected: TIMEOUT - [origin of the script that invoked the method, about:blank] - expected: TIMEOUT diff --git a/tests/wpt/meta/webmessaging/without-ports/018.html.ini b/tests/wpt/meta/webmessaging/without-ports/018.html.ini deleted file mode 100644 index b7b36c1d3a4..00000000000 --- a/tests/wpt/meta/webmessaging/without-ports/018.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[018.html] - expected: TIMEOUT - [origin of the script that invoked the method, javascript:] - expected: TIMEOUT diff --git a/tests/wpt/tests/.github/workflows/check-workflow-run.yml b/tests/wpt/tests/.github/workflows/check-workflow-run.yml index 4b7e6575db6..0487f03a592 100644 --- a/tests/wpt/tests/.github/workflows/check-workflow-run.yml +++ b/tests/wpt/tests/.github/workflows/check-workflow-run.yml @@ -15,7 +15,7 @@ on: jobs: check-workflow-run: name: "Check for appropriate epochs" - if: ${{ github.event_name == 'workflow_run' }} + if: ${{ github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success' }} runs-on: - ubuntu-22.04 permissions: diff --git a/tests/wpt/tests/.github/workflows/documentation.yml b/tests/wpt/tests/.github/workflows/documentation.yml index eecf8ea6369..f7e9fb2e135 100644 --- a/tests/wpt/tests/.github/workflows/documentation.yml +++ b/tests/wpt/tests/.github/workflows/documentation.yml @@ -15,6 +15,7 @@ on: jobs: build-and-publish: runs-on: ubuntu-20.04 + if: github.repository == 'web-platform-tests/wpt' steps: - name: Set up Python uses: actions/setup-python@v5 @@ -31,8 +32,6 @@ jobs: with: fetch-depth: 50 - name: Run website_build.sh - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' run: ./tools/ci/website_build.sh env: DEPLOY_TOKEN: ${{ secrets.DEPLOY_TOKEN }} diff --git a/tests/wpt/tests/.github/workflows/epochs.yml b/tests/wpt/tests/.github/workflows/epochs.yml index 8e85ee75a84..8b2081364e5 100644 --- a/tests/wpt/tests/.github/workflows/epochs.yml +++ b/tests/wpt/tests/.github/workflows/epochs.yml @@ -7,14 +7,13 @@ on: jobs: update: runs-on: ubuntu-20.04 + if: github.repository == 'web-platform-tests/wpt' steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 - name: Run epochs_update.sh - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' run: ./tools/ci/epochs_update.sh env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/tests/.github/workflows/interfaces.yml b/tests/wpt/tests/.github/workflows/interfaces.yml index ff2a679b598..302e0a846d8 100644 --- a/tests/wpt/tests/.github/workflows/interfaces.yml +++ b/tests/wpt/tests/.github/workflows/interfaces.yml @@ -7,14 +7,13 @@ on: jobs: update: runs-on: ubuntu-20.04 + if: github.repository == 'web-platform-tests/wpt' steps: - name: Checkout uses: actions/checkout@v4 - name: Run interfaces_update.sh run: ./tools/ci/interfaces_update.sh - name: Create pull request - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' uses: peter-evans/create-pull-request@v6 with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/tests/.github/workflows/manifest.yml b/tests/wpt/tests/.github/workflows/manifest.yml index aae43615a9e..a27fc2258de 100644 --- a/tests/wpt/tests/.github/workflows/manifest.yml +++ b/tests/wpt/tests/.github/workflows/manifest.yml @@ -9,6 +9,7 @@ on: jobs: build-and-tag: runs-on: ubuntu-20.04 + if: github.repository == 'web-platform-tests/wpt' steps: - name: Set up Python uses: actions/setup-python@v5 @@ -23,8 +24,6 @@ jobs: sudo apt-get -qqy install zstd pip install -r tools/wpt/requirements.txt - name: Run manifest_build.py - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' run: tools/docker/retry.py --delay 60 python tools/ci/manifest_build.py env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/tests/.github/workflows/regen_certs.yml b/tests/wpt/tests/.github/workflows/regen_certs.yml index bb0cea9f396..b66ba90065f 100644 --- a/tests/wpt/tests/.github/workflows/regen_certs.yml +++ b/tests/wpt/tests/.github/workflows/regen_certs.yml @@ -8,6 +8,7 @@ on: jobs: update: runs-on: ubuntu-20.04 + if: github.repository == 'web-platform-tests/wpt' steps: - name: Set up Python uses: actions/setup-python@v5 @@ -16,14 +17,10 @@ jobs: - name: Checkout uses: actions/checkout@v4 - name: Regenerate certs - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' run: | python wpt make-hosts-file | sudo tee -a /etc/hosts python wpt regen-certs --force - name: Commit and create pull request - # Use a conditional step instead of a conditional job to work around #20700. - if: github.repository == 'web-platform-tests/wpt' uses: peter-evans/create-pull-request@v6 with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/tests/.gitignore b/tests/wpt/tests/.gitignore index 061700a9604..f2525f49ab6 100644 --- a/tests/wpt/tests/.gitignore +++ b/tests/wpt/tests/.gitignore @@ -17,6 +17,9 @@ node_modules/ /MANIFEST.json /_certs /config.json +# The default manifest location when running infrastructure tests locally with +# `--metadata=infrastructure/metadata`. +/infrastructure/metadata/MANIFEST.json # Files generated when regenerating pre-generated certs /tools/certs/0*.pem diff --git a/tests/wpt/tests/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html b/tests/wpt/tests/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html index 05f54b0ae0a..ee879b0d955 100644 --- a/tests/wpt/tests/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html +++ b/tests/wpt/tests/FileAPI/BlobURL/cross-partition-navigation.tentative.https.html @@ -64,7 +64,25 @@ async function create_test_iframes(t, response_queue_uuid) { return [cross_site_iframe_uuid, same_site_iframe_uuid]; } -// Tests navigating blob URL for same and cross partition iframes. +const opener_check_frame_html = (noopener_response_queue) => ` + <!doctype html> + <!-- dispatcher.js requires the baseURI to be set in order to compute + the server path correctly in the blob URL page. --> + <base href="${window.location.href}"> + <script src="/html/cross-origin-embedder-policy/credentialless/resources/common.js"><\/script> + <script src="/html/anonymous-iframe/resources/common.js"><\/script> + <script src="/common/utils.js"><\/script> + <script src="/common/dispatcher/dispatcher.js"><\/script> + <script> + if (window.opener === null) { + send("${noopener_response_queue}", "${opener_null_response}") + } else { + send("${noopener_response_queue}", "${opener_not_null_response}") + } + <\/script> +`; + +// Tests blob URL window.open for same and cross partition iframes. promise_test(t => { return new Promise(async (resolve, reject) => { try { @@ -75,25 +93,7 @@ promise_test(t => { const [cross_site_iframe_uuid, same_site_iframe_uuid] = await create_test_iframes(t, response_queue_uuid); - const frame_html = ` - <!doctype html> - <!-- dispatcher.js requires the baseURI to be set in order to compute - the server path correctly in the blob URL page. --> - <base href="${window.location.href}"> - <script src="/html/cross-origin-embedder-policy/credentialless/resources/common.js"><\/script> - <script src="/html/anonymous-iframe/resources/common.js"><\/script> - <script src="/common/utils.js"><\/script> - <script src="/common/dispatcher/dispatcher.js"><\/script> - <script> - if (window.opener === null) { - send("${noopener_response_queue}", "${opener_null_response}") - } else { - send("${noopener_response_queue}", "${opener_not_null_response}") - } - <\/script> - `; - - const blob = new Blob([frame_html], {type : "text/html"}); + const blob = new Blob([opener_check_frame_html(noopener_response_queue)], {type : "text/html"}); const blob_url = URL.createObjectURL(blob); // Attempt to open blob URL in cross partition iframe. @@ -122,7 +122,105 @@ promise_test(t => { reject(e); } }); -}, "Blob URL navigation should enforce noopener for a cross-top-level-site navigation"); +}, "Blob URL window.open should enforce noopener for a cross-top-level-site navigation"); + +const open_blob_url_window_via_a_click = (blob_url) => ` + const link = document.createElement("a"); + link.href = "${blob_url}"; + link.target = "_blank"; + link.rel = "opener"; + document.body.appendChild(link); + link.click(); +`; + +// Tests blob URL `<a target="_blank" rel="opener">` click for same and cross partition iframes. +promise_test(t => { + return new Promise(async (resolve, reject) => { + try { + // Creates same and cross partition iframes. + const noopener_response_queue = token(); + + const [cross_site_iframe_uuid, same_site_iframe_uuid] = await create_test_iframes(t, token()); + + const blob = new Blob([opener_check_frame_html(noopener_response_queue)], {type : "text/html"}); + const blob_url = URL.createObjectURL(blob); + + // Attempt to click blob URL in cross partition iframe. + await send(cross_site_iframe_uuid, open_blob_url_window_via_a_click(blob_url)); + const noopener_response_1 = await receive(noopener_response_queue); + if (noopener_response_1 !== opener_null_response) { + reject(`Blob URL page opener wasn't null in not-same-top-level-site iframe.`); + } + + // Attempt to click blob URL in same partition iframe. + await send(same_site_iframe_uuid, open_blob_url_window_via_a_click(blob_url)); + const noopener_response_2 = await receive(noopener_response_queue); + if (noopener_response_2 !== opener_not_null_response) { + reject(`Blob URL page opener was null in same-top-level-site iframe`); + } + resolve(); + } catch (e) { + reject(e); + } + }); +}, "Blob URL link click should enforce noopener for a cross-top-level-site navigation"); + +const open_blob_url_window_via_area_click = (blob_url) => ` + const canvas = document.createElement("canvas"); + canvas.height = 1; + canvas.width = 1; + const dataURL = canvas.toDataURL(); + + const image = document.createElement("img"); + image.src = dataURL; + document.body.appendChild(image); + + const map = document.createElement("map"); + map.name = "map"; + image.useMap = "#map"; + document.body.appendChild(map); + + const area = document.createElement("area"); + area.shape = "rect"; + area.coords = "0,0,1,1"; + area.href = "${blob_url}"; + area.target = "_blank"; + area.rel = "opener"; + map.appendChild(area); + area.click(); +`; + +// Tests blob URL `<area target="_blank" rel="opener">` click for same and cross partition iframes. +promise_test(t => { + return new Promise(async (resolve, reject) => { + try { + // Creates same and cross partition iframes. + const noopener_response_queue = token(); + + const [cross_site_iframe_uuid, same_site_iframe_uuid] = await create_test_iframes(t, token()); + + const blob = new Blob([opener_check_frame_html(noopener_response_queue)], {type : "text/html"}); + const blob_url = URL.createObjectURL(blob); + + // Attempt to click blob URL in cross partition iframe. + await send(cross_site_iframe_uuid, open_blob_url_window_via_area_click(blob_url)); + const noopener_response_1 = await receive(noopener_response_queue); + if (noopener_response_1 !== opener_null_response) { + reject(`Blob URL page opener wasn't null in not-same-top-level-site iframe.`); + } + + // Attempt to click blob URL in same partition iframe. + await send(same_site_iframe_uuid, open_blob_url_window_via_area_click(blob_url)); + const noopener_response_2 = await receive(noopener_response_queue); + if (noopener_response_2 !== opener_not_null_response) { + reject(`Blob URL page opener was null in same-top-level-site iframe`); + } + resolve(); + } catch (e) { + reject(e); + } + }); +}, "Blob URL area element click should enforce noopener for a cross-top-level-site navigation"); </script> -</body>
\ No newline at end of file +</body> diff --git a/tests/wpt/tests/IndexedDB/get-databases.any.js b/tests/wpt/tests/IndexedDB/get-databases.any.js index ac1ab15f27f..a79adb808d9 100644 --- a/tests/wpt/tests/IndexedDB/get-databases.any.js +++ b/tests/wpt/tests/IndexedDB/get-databases.any.js @@ -85,20 +85,32 @@ promise_test(async testCase => { }, "Make sure an empty list is returned for the case of no databases."); promise_test(async testCase => { + function sleep_sync(msec) { + const start = new Date().getTime(); + while (new Date().getTime() - start < msec) {} + } + // Delete any databases that may not have been cleaned up after previous test // runs as well as the two databases made above. await deleteAllDatabases(testCase); const db1 = await createNamedDatabase(testCase, "DB1", ()=>{}); + let databases_promise1; const db2 = await createNamedDatabase(testCase, "DB2", async () => { - const databases_result1 = await indexedDB.databases(); - assert_equals( - databases_result1.length, - 1, - "The result of databases() should be only those databases which have " - + "been created at the time of calling, regardless of versionchange " - + "transactions currently running."); + databases_promise1 = indexedDB.databases(); + + // Give databases() operation a chance to fetch all current info about + // existing databases. This must be a sync sleep since await would trigger + // auto commit of the upgrade transaction. + sleep_sync(1000); }); + const databases_result1 = await databases_promise1; + assert_equals( + databases_result1.length, + 1, + "The result of databases() should be only those databases which have " + + "been created at the time of calling, regardless of versionchange " + + "transactions currently running."); db1.close(); db2.close(); const databases_result2 = await indexedDB.databases(); @@ -107,13 +119,20 @@ promise_test(async testCase => { 2, "The result of databases() should include all databases which have " + "been created at the time of calling."); + let databases_promise3; await migrateNamedDatabase(testCase, "DB2", 2, async () => { - const databases_result3 = await indexedDB.databases(); - assert_true( - databases_result3[0].version === 1 - && databases_result3[1].version === 1, - "The result of databases() should contain the versions of databases " - + "at the time of calling, regardless of versionchange transactions " - + "currently running."); + databases_promise3 = indexedDB.databases(); + + // Give databases() operation a chance to fetch all current info about + // existing databases. This must be a sync sleep since await would trigger + // auto commit of the upgrade transaction. + sleep_sync(1000); }); + const databases_result3 = await databases_promise3; + assert_true( + databases_result3[0].version === 1 + && databases_result3[1].version === 1, + "The result of databases() should contain the versions of databases " + + "at the time of calling, regardless of versionchange transactions " + + "currently running."); }, "Ensure that databases() doesn't pick up changes that haven't commited."); diff --git a/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js b/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js new file mode 100644 index 00000000000..5edc832b616 --- /dev/null +++ b/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.https.any.js @@ -0,0 +1,9 @@ +// META: title=WebCryptoAPI: deriveKey() Using HKDF and PBKDF2 from an ECDH key +// META: script=derive_key_and_encrypt.js +// META: script=../util/helpers.js + +// Test imported from WebKit's source, defined to check the impact of the +// 'Get Key Length' behavior of HKDF and PBKDF2, which should return 'null' +// in both cases, in the 'deriveKey' operation. +// https://bugs.webkit.org/show_bug.cgi?id=282096 +promise_test(define_tests, 'setup - define tests'); diff --git a/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.js b/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.js new file mode 100644 index 00000000000..5963a852fcf --- /dev/null +++ b/tests/wpt/tests/WebCryptoAPI/derive_bits_keys/derive_key_and_encrypt.js @@ -0,0 +1,49 @@ +let iv = new Uint8Array(Array(12).keys()); +let salt = new Uint8Array(Array(10).keys()); +let plaintext = new Uint8Array(Array(100).keys()); + +function define_tests() { + importKeys().then((keys) => { + // Make sure that ecdh produces the same shared secret and the same encryption results using a key derived from that secret. + keys.forEach(keyData => { + promise_test(async() => { + let hkdfKey = await crypto.subtle.deriveKey({name: "ECDH", public: keyData.publicKey }, keyData.privateKey, { name: "HKDF", hash: "" , salt: new Uint8Array(), info: new Uint8Array() }, false, ["deriveKey"]); + let aesKey = await crypto.subtle.deriveKey({name: "HKDF", hash: "SHA-256", salt: salt, info: plaintext}, hkdfKey, {name:"AES-GCM", length: 256}, true, ["encrypt", "decrypt"]); + let result = await crypto.subtle.encrypt({ name: "AES-GCM", iv: iv }, aesKey, plaintext); + assert_equals(bytesToHexString(result), "a6280c522670eaf82f6564afbeb20a5b3f2d4e13c5596f6df3dcff8c34cb2118d2770fb24d83cfac5079c323118485bb01170292ee41eb82b07208f4840478fea3771d8922785c476ba06c2a0b933fc1661431419530a916ad4468545d1af5004a1149fea241c2ff1582ee58a8b7d79935de5def"); + }, "HKDF derivation of a ECDH key " + keyData.test); + promise_test(async() => { + let pkdf2Key = await crypto.subtle.deriveKey({name: "ECDH", public: keyData.publicKey }, keyData.privateKey, { name: "PBKDF2", hash: "" , salt: new Uint8Array(), iterations: 32 }, false, ["deriveKey"]); + let aesKey = await crypto.subtle.deriveKey({name: "PBKDF2", hash: "SHA-256", salt: salt, iterations: 32 }, pkdf2Key, { name:"AES-GCM", length: 256 }, true, ["encrypt", "decrypt"]); + let result = await crypto.subtle.encrypt({ name: "AES-GCM", iv: iv }, aesKey, plaintext); + assert_equals(bytesToHexString(result), "c6201dfbb6fa92c1c246f6ce52f8f1c037f087efde41bac7f6485a2a8207623d2d3825b9cbe8ef864a90378667ed25544ce44cd2904bd96c19f0eeb611d626185165a8afb4e52f95700d7880f83939a42712fc4e377f198c01a61b397b76c3a4b93d932c321084bbef33332169dea09458b27df3"); + }, "PBKDF2 derivation of a ECDH key " + keyData.test); + }); + }, (e) => { + assert_unreached("Setup failed: " + e.message); + }); + + return Promise.resolve("define_tests"); +} + +async function importKeys() { + // "ECDSA" with a 'P-256' curve + let keyData = [ + hexStringToUint8Array("308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b0201010420fe77a808a7109ba5ceb93ebebad2c84a714d864ad29b62d6537e1969035c0079a144034200042684c752eef1c927a80c74e8b02ce459f848b5977f37fd878b36dae632be9a6cadd56126e404a4f75c535e5769d95b49fb1106f784f3d231b776d1f4d57927ce"), + hexStringToUint8Array("042684c752eef1c927a80c74e8b02ce459f848b5977f37fd878b36dae632be9a6cadd56126e404a4f75c535e5769d95b49fb1106f784f3d231b776d1f4d57927ce"), + hexStringToUint8Array("308187020100301306072a8648ce3d020106082a8648ce3d030107046d306b020101042067521ccd1f85516118182bca3394c273bab9ce5cd6265105559e325e01f2df1ca144034200043042d8698882f2b59de972390d3fc9277e2e677a6c560148017c9475218fda1b38f76f7645fbcaf3d03e6259d080204fbafb04731b6ad53cb25c3d35d95b7c73"), + hexStringToUint8Array("043042d8698882f2b59de972390d3fc9277e2e677a6c560148017c9475218fda1b38f76f7645fbcaf3d03e6259d080204fbafb04731b6ad53cb25c3d35d95b7c73"), + ]; + let extractable = true; + var allKeys = await Promise.all([ + crypto.subtle.importKey("pkcs8", keyData[0], {name: "ECDH", namedCurve: "P-256"}, extractable, ["deriveKey", 'deriveBits']), + crypto.subtle.importKey("raw", keyData[1], {name: "ECDH", namedCurve: "P-256"}, extractable, []), + crypto.subtle.importKey("pkcs8", keyData[2], {name: "ECDH", namedCurve: "P-256"}, extractable, ["deriveKey", 'deriveBits']), + crypto.subtle.importKey("raw", keyData[3], {name: "ECDH", namedCurve: "P-256"}, extractable, []), + ]); + // Test cases defined combining public and private keys of each key-pair. + return [ + { test: 1, publicKey: allKeys[3], privateKey: allKeys[0] }, + { test: 2, publicKey: allKeys[1], privateKey: allKeys[2] } + ]; +} diff --git a/tests/wpt/tests/WebCryptoAPI/util/helpers.js b/tests/wpt/tests/WebCryptoAPI/util/helpers.js index bda97003263..c60371dc6ad 100644 --- a/tests/wpt/tests/WebCryptoAPI/util/helpers.js +++ b/tests/wpt/tests/WebCryptoAPI/util/helpers.js @@ -259,3 +259,41 @@ function allNameVariants(name, slowTest) { if (slowTest) return [mixedCaseName]; return unique([upCaseName, lowCaseName, mixedCaseName]); } + +// Builds a hex string representation for an array-like input. +// "bytes" can be an Array of bytes, an ArrayBuffer, or any TypedArray. +// The output looks like this: +// ab034c99 +function bytesToHexString(bytes) +{ + if (!bytes) + return null; + + bytes = new Uint8Array(bytes); + var hexBytes = []; + + for (var i = 0; i < bytes.length; ++i) { + var byteString = bytes[i].toString(16); + if (byteString.length < 2) + byteString = "0" + byteString; + hexBytes.push(byteString); + } + + return hexBytes.join(""); +} + +function hexStringToUint8Array(hexString) +{ + if (hexString.length % 2 != 0) + throw "Invalid hexString"; + var arrayBuffer = new Uint8Array(hexString.length / 2); + + for (var i = 0; i < hexString.length; i += 2) { + var byteValue = parseInt(hexString.substr(i, 2), 16); + if (byteValue == NaN) + throw "Invalid hexString"; + arrayBuffer[i/2] = byteValue; + } + + return arrayBuffer; +} diff --git a/tests/wpt/tests/avif/animated-avif-timeout-ref.html b/tests/wpt/tests/avif/animated-avif-timeout-ref.html index 52374220c91..82febcca0b1 100644 --- a/tests/wpt/tests/avif/animated-avif-timeout-ref.html +++ b/tests/wpt/tests/avif/animated-avif-timeout-ref.html @@ -1 +1 @@ -<img src=../images/green.avif style="height:500px"> +<img src=../images/green.avif style="height:500px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/avif/animated-avif-timeout.html b/tests/wpt/tests/avif/animated-avif-timeout.html index 0970c994d34..e89b9a8e06c 100644 --- a/tests/wpt/tests/avif/animated-avif-timeout.html +++ b/tests/wpt/tests/avif/animated-avif-timeout.html @@ -1,7 +1,7 @@ <html class="reftest-wait"> <title>Animated AVIF: Second frame displays quickly, replacing red with green.</title> <link rel="match" href="animated-avif-timeout-ref.html"/> -<img src=../images/animated-avif.avif onload="loaded()" style="height:500px"/> +<img src=../images/animated-avif.avif onload="loaded()" style="height:500px;image-rendering:crisp-edges;"/> <script> function loaded() { setTimeout(function() { diff --git a/tests/wpt/tests/content-security-policy/navigation/to-javascript-url-script-src.html b/tests/wpt/tests/content-security-policy/navigation/to-javascript-url-script-src.html index 70dea1f985e..e0b6d992e96 100644 --- a/tests/wpt/tests/content-security-policy/navigation/to-javascript-url-script-src.html +++ b/tests/wpt/tests/content-security-policy/navigation/to-javascript-url-script-src.html @@ -7,17 +7,15 @@ <body> <script nonce="abc"> - function assert_csp_event_for_element(test, element) { + function assert_csp_event_for_element(test, element, resolve) { assert_equals(typeof SecurityPolicyViolationEvent, "function", "These tests require 'SecurityPolicyViolationEvent'."); document.addEventListener("securitypolicyviolation", test.step_func(e => { - if (e.target != element) - return; assert_equals(e.blockedURI, "inline"); assert_equals(e.effectiveDirective, "script-src-elem"); assert_equals(element.contentDocument.body.innerText, "", "Ensure that 'Fail' doesn't appear in the child document."); element.remove(); - test.done(); - })); + resolve(); + }, { once: true })); } function navigate_to_javascript_onload(test, iframe) { @@ -32,41 +30,49 @@ })); } - async_test(t => { - var i = document.createElement("iframe"); - i.src = "javascript:'Fail.'"; + promise_test(t => { + return new Promise(resolve => { + var i = document.createElement("iframe"); + i.src = "javascript:'Fail.'"; - assert_csp_event_for_element(t, i); + assert_csp_event_for_element(t, i, resolve); - document.body.appendChild(i); + document.body.appendChild(i); + }) }, "<iframe src='javascript:'> blocked without 'unsafe-inline'."); - async_test(t => { - var i = document.createElement("iframe"); + promise_test(t => { + return new Promise(resolve => { + var i = document.createElement("iframe"); - assert_csp_event_for_element(t, i); - navigate_to_javascript_onload(t, i); + assert_csp_event_for_element(t, i, resolve); + navigate_to_javascript_onload(t, i); - document.body.appendChild(i); + document.body.appendChild(i); + }) }, "<iframe> navigated to 'javascript:' blocked without 'unsafe-inline'."); - async_test(t => { - var i = document.createElement("iframe"); - i.src = "../support/echo-policy.py?policy=" + encodeURIComponent("script-src 'unsafe-inline'"); + promise_test(t => { + return new Promise(resolve => { + var i = document.createElement("iframe"); + i.src = "../support/echo-policy.py?policy=" + encodeURIComponent("script-src 'unsafe-inline'"); - assert_csp_event_for_element(t, i); - navigate_to_javascript_onload(t, i); + assert_csp_event_for_element(t, i, resolve); + navigate_to_javascript_onload(t, i); - document.body.appendChild(i); + document.body.appendChild(i); + }) }, "<iframe src='...'> with 'unsafe-inline' navigated to 'javascript:' blocked in this document"); - async_test(t => { - var i = document.createElement("iframe"); - i.src = "../support/echo-policy.py?policy=" + encodeURIComponent("script-src 'none'"); + promise_test(t => { + return new Promise(resolve => { + var i = document.createElement("iframe"); + i.src = "../support/echo-policy.py?policy=" + encodeURIComponent("script-src 'none'"); - assert_csp_event_for_element(t, i); - navigate_to_javascript_onload(t, i); + assert_csp_event_for_element(t, i, resolve); + navigate_to_javascript_onload(t, i); - document.body.appendChild(i); + document.body.appendChild(i); + }) }, "<iframe src='...'> without 'unsafe-inline' navigated to 'javascript:' blocked in this document."); </script> diff --git a/tests/wpt/tests/css/css-cascade/scope-specificity.html b/tests/wpt/tests/css/css-cascade/scope-specificity.html index fa103ff3742..8541e0d6371 100644 --- a/tests/wpt/tests/css/css-cascade/scope-specificity.html +++ b/tests/wpt/tests/css/css-cascade/scope-specificity.html @@ -85,8 +85,10 @@ test_scope_specificity(['@scope (#main)', 'div .b'], 'div .b'); test_scope_specificity(['@scope (#main)', '@scope (.a)', '.b'], '.b'); // Explicit `:scope` adds specficity. test_scope_specificity(['@scope (#main)', ':scope .b'], ':scope .b'); -// Using & in scoped style with implicit scope root uses `:scope`, which adds specificity -test_scope_specificity(['@scope', '& .b'], ':scope .b', styleImplicit); +// Using & in scoped style with implicit scope root matches the same elements +// as `:scope`, but does not add any specificity. +// https://github.com/w3c/csswg-drafts/issues/10196 +test_scope_specificity(['@scope', '& .b'], ':where(:scope) .b', styleImplicit); // Using relative selector syntax does not add specificity test_scope_specificity(['@scope (#main)', '> .a'], ':where(#main) > .a'); </script> diff --git a/tests/wpt/tests/css/css-color-hdr/computed.html b/tests/wpt/tests/css/css-color-hdr/computed.html new file mode 100644 index 00000000000..7ee1a962977 --- /dev/null +++ b/tests/wpt/tests/css/css-color-hdr/computed.html @@ -0,0 +1,40 @@ +<!DOCTYPE html> +<title>Computed value of dynamic-range-limit</title> +<link rel="help" href="https://drafts.csswg.org/css-color-hdr/#the-dynamic-range-limit-property"> +<meta name="assert" content="Computed value of dynamic-range-limit"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/computed-testcommon.js"></script> + +<div id="target"></div> + +<script> +test_computed_value("dynamic-range-limit", "high"); +test_computed_value("dynamic-range-limit", "constrained-high"); +test_computed_value("dynamic-range-limit", "standard"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(standard 75%, high 25%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(standard 25%, high 75%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(high 25%, standard 75%)", + "dynamic-range-limit-mix(standard 75%, high 25%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(high 100%, standard 100%)", + "dynamic-range-limit-mix(standard 50%, high 50%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(high 80%, standard 60%, constrained-high 60%)", + "dynamic-range-limit-mix(standard 30%, constrained-high 30%, high 40%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(standard 25%, constrained-high 75%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(constrained-high 75%, standard 25%)", + "dynamic-range-limit-mix(standard 25%, constrained-high 75%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(constrained-high 25%, high 25%)", + "dynamic-range-limit-mix(constrained-high 50%, high 50%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(standard 25%, constrained-high 50%, high 25%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(standard 10%, constrained-high 20%, high 20%)", + "dynamic-range-limit-mix(standard 20%, constrained-high 40%, high 40%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(high 10%, standard 30%)", + "dynamic-range-limit-mix(standard 75%, high 25%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(dynamic-range-limit-mix(standard 10%, high 30%) 20%, standard 80%)", + "dynamic-range-limit-mix(standard 85%, high 15%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(dynamic-range-limit-mix(standard 25%, high 75%) 20%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 40%, dynamic-range-limit-mix(constrained-high 25%, high 75%) 40%)", + "dynamic-range-limit-mix(standard 15%, constrained-high 40%, high 45%)"); +test_computed_value("dynamic-range-limit", "dynamic-range-limit-mix(high 10%, dynamic-range-limit-mix(standard 25%, constrained-high 75%) 20%, dynamic-range-limit-mix(constrained-high 10%, high 30%) 20%)", + "dynamic-range-limit-mix(standard 10%, constrained-high 40%, high 50%)"); +</script> diff --git a/tests/wpt/tests/css/css-color-hdr/inheritance.html b/tests/wpt/tests/css/css-color-hdr/inheritance.html new file mode 100644 index 00000000000..4f7a44a7729 --- /dev/null +++ b/tests/wpt/tests/css/css-color-hdr/inheritance.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<title>Inheritance of dynamic-range-limit</title> +<link rel="help" href="https://drafts.csswg.org/css-color-hdr/#the-dynamic-range-limit-property"> +<meta name="assert" content="Inheritance of dynamic-range-limit"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/inheritance-testcommon.js"></script> + +<div id="container"> + <div id="target"></div> +</div> + +<script> + assert_inherited('dynamic-range-limit', 'high', 'standard'); +</script> diff --git a/tests/wpt/tests/css/css-color-hdr/interpolation.html b/tests/wpt/tests/css/css-color-hdr/interpolation.html new file mode 100644 index 00000000000..62e079f6366 --- /dev/null +++ b/tests/wpt/tests/css/css-color-hdr/interpolation.html @@ -0,0 +1,65 @@ +<!DOCTYPE html> +<title>Interpolation of dynamic-range-limit</title> +<link rel="help" href="https://drafts.csswg.org/css-color-hdr/#the-dynamic-range-limit-property"> +<meta name="assert" content="Interpolation of dynamic-range-limit"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/interpolation-testcommon.js"></script> + +<body> + <template id="target-template">T</template> +</body> + +<script> +test_interpolation({ + property: "dynamic-range-limit", + from: "high", + to: "standard", +}, [ + {at: 0.0, expect: "high"}, + {at: 0.25, expect: "dynamic-range-limit-mix(standard 25%, high 75%)"}, + {at: 0.75, expect: "dynamic-range-limit-mix(standard 75%, high 25%)"}, + {at: 1.0, expect: "standard"}, +]); + +test_interpolation({ + property: "dynamic-range-limit", + from: "constrained-high", + to: "standard", +}, [ + {at: 0.0, expect: "constrained-high"}, + {at: 0.5, expect: "dynamic-range-limit-mix(standard 50%, constrained-high 50%)"}, + {at: 1.0, expect: "standard"}, +]); + +test_interpolation({ + property: "dynamic-range-limit", + from: "dynamic-range-limit-mix(standard 50%, high 50%)", + to: "standard", +}, [ + {at: 0.0, expect: "dynamic-range-limit-mix(standard 50%, high 50%)"}, + {at: 0.75, expect: "dynamic-range-limit-mix(standard 87.5%, high 12.5%)"}, + {at: 1.0, expect: "standard"}, +]); + +test_interpolation({ + property: "dynamic-range-limit", + from: "dynamic-range-limit-mix(standard 90%, high 10%)", + to: "dynamic-range-limit-mix(standard 10%, high 90%)", +}, [ + {at: 0.0, expect: "dynamic-range-limit-mix(standard 90%, high 10%)"}, + {at: 0.5, expect: "dynamic-range-limit-mix(standard 50%, high 50%)"}, + {at: 1.0, expect: "dynamic-range-limit-mix(standard 10%, high 90%)"}, +]); + +test_interpolation({ + property: "dynamic-range-limit", + from: "dynamic-range-limit-mix(constrained-high 90%, standard 10%)", + to: "dynamic-range-limit-mix(high 10%, standard 90%)", +}, [ + {at: 0.0, expect: "dynamic-range-limit-mix(standard 10%, constrained-high 90%)"}, + {at: 0.5, expect: "dynamic-range-limit-mix(standard 50%, constrained-high 45%, high 5%)"}, + {at: 1.0, expect: "dynamic-range-limit-mix(standard 90%, high 10%)"}, +]); +</script> diff --git a/tests/wpt/tests/css/css-color-hdr/parsing.html b/tests/wpt/tests/css/css-color-hdr/parsing.html new file mode 100644 index 00000000000..5d377a1ca7a --- /dev/null +++ b/tests/wpt/tests/css/css-color-hdr/parsing.html @@ -0,0 +1,36 @@ +<!DOCTYPE html> +<title>Parsing dynamic-range-limit with valid and invalid values</title> +<link rel="help" href="https://drafts.csswg.org/css-color-hdr/#the-dynamic-range-limit-property"> +<meta name="assert" content="Parsing of dynamic-range-limit"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/parsing-testcommon.js"></script> + +<script> + test_valid_value("dynamic-range-limit", "standard"); + test_valid_value("dynamic-range-limit", "high"); + test_valid_value("dynamic-range-limit", "constrained-high"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 80%, standard 20%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 8%, standard 2%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 99%, standard 99%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(constrained-high 20%, high 80%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(dynamic-range-limit-mix(constrained-high 90%, high 10%) 1%, high 80%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 1%, dynamic-range-limit-mix(constrained-high 2%, high 10%) 80%)"); + test_valid_value("dynamic-range-limit", "dynamic-range-limit-mix(dynamic-range-limit-mix(high 1%, standard 2%) 3%, dynamic-range-limit-mix(constrained-high 5%, high 5%) 6%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 80%, standard 20%, )"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(high, standard 20%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(constrained-high, high, 80%)"); + test_invalid_value("dynamic-range-limit", ""); + test_invalid_value("dynamic-range-limit", "none"); + test_invalid_value("dynamic-range-limit", "default"); + test_invalid_value("dynamic-range-limit", "hdr"); + test_invalid_value("dynamic-range-limit", "sdr"); + test_invalid_value("dynamic-range-limit", "low"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(low, high, 10%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 101%, standard 1%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(high -1%, standard 1%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(standard, high, 0.1)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(high 0%, standard 0%)"); + test_invalid_value("dynamic-range-limit", "dynamic-range-limit-mix(dynamic-range-limit-mix(high 1%, standard 2%) 3%, dynamic-range-limit-mix(constrained-high 0%, high 0%) 6%)"); +</script> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/animation-container-size.html b/tests/wpt/tests/css/css-conditional/container-queries/animation-container-size.html index e620335c358..0a142ef7e26 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/animation-container-size.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/animation-container-size.html @@ -29,7 +29,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).backgroundColor, 'rgb(0, 0, 255)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/animation-container-type-dynamic.html b/tests/wpt/tests/css/css-conditional/container-queries/animation-container-type-dynamic.html index 473c914d8a5..404a4c69cd8 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/animation-container-type-dynamic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/animation-container-type-dynamic.html @@ -49,7 +49,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).backgroundColor, 'rgb(0, 0, 255)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-animation.html b/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-animation.html index b956fed2b4c..cc43b745873 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-animation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-animation.html @@ -33,7 +33,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).backgroundColor, 'rgb(0, 128, 0)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-transition.html b/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-transition.html index ca8808664ef..ed1de7af782 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-transition.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/animation-nested-transition.html @@ -30,7 +30,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).backgroundColor, 'rgb(100, 100, 100)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/aspect-ratio-feature-evaluation.html b/tests/wpt/tests/css/css-conditional/container-queries/aspect-ratio-feature-evaluation.html index 9b68e8679d0..590f2b227aa 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/aspect-ratio-feature-evaluation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/aspect-ratio-feature-evaluation.html @@ -22,7 +22,7 @@ <div id="inline-size" class="container"><span></span></div> <div id="size" class="container"><span></span></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const red = "rgb(255, 0, 0)"; const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/at-container-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/at-container-parsing.html index 5c9d8c1bb9e..183242e69dd 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/at-container-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/at-container-parsing.html @@ -8,7 +8,7 @@ <main id="cq-main"></main> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test_cq_condition_known('(width)'); test_cq_condition_known('(min-width: 0px)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/at-container-serialization.html b/tests/wpt/tests/css/css-conditional/container-queries/at-container-serialization.html index 7e6e3e99452..dbe9ea023e8 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/at-container-serialization.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/at-container-serialization.html @@ -27,7 +27,7 @@ @container (calc(1em + 1px) >= width >= max(10em, 10px)) { } </style> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); let rules = testSheet.sheet.cssRules; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-parsing.html index c63cc76560b..2e6722335c2 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-parsing.html @@ -8,7 +8,7 @@ <main id="cq-main"></main> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); test_cq_condition_known('style(--my-prop: foo)'); test_cq_condition_known('style(--my-prop: foo - bar ())'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-serialization.html b/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-serialization.html index bd9d23a4b70..f128109c678 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-serialization.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/at-container-style-serialization.html @@ -17,7 +17,7 @@ </style> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_style_container_queries(); assert_equals(testSheet.sheet.cssRules.length, 8); }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/auto-scrollbars.html b/tests/wpt/tests/css/css-conditional/container-queries/auto-scrollbars.html index 96f082f38aa..a08d694ac57 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/auto-scrollbars.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/auto-scrollbars.html @@ -32,7 +32,7 @@ </div> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); assert_implements_optional(precondition.clientWidth < 100, "Tests do not work with overlay scrollbars"); }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/backdrop-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/backdrop-invalidation.html index 6f7d52cc386..a4a232e9a13 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/backdrop-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/backdrop-invalidation.html @@ -29,7 +29,7 @@ <dialog>test</dialog> </main> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); let dialog = document.querySelector('dialog'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/calc-evaluation.html b/tests/wpt/tests/css/css-conditional/container-queries/calc-evaluation.html index 60fd59e9cd4..ccdd31a061b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/calc-evaluation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/calc-evaluation.html @@ -24,7 +24,7 @@ <div id=target></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).color, 'rgb(0, 128, 0)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-005.html b/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-005.html index 3068ce708e6..a96d48411e4 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-005.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-005.html @@ -21,7 +21,7 @@ <div id="target" tabIndex="1"></div> </canvas> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { target.focus(); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-006.html b/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-006.html index 0fbb6f6d833..6cee3883ace 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-006.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/canvas-as-container-006.html @@ -22,7 +22,7 @@ <div id="target" tabIndex="1"></div> </canvas> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { target.focus(); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/column-spanner-in-container.html b/tests/wpt/tests/css/css-conditional/container-queries/column-spanner-in-container.html index 0f0b5f7850f..912c6304306 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/column-spanner-in-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/column-spanner-in-container.html @@ -23,7 +23,7 @@ <div id="spanner"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(spanner).width, "600px"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/conditional-container-status.html b/tests/wpt/tests/css/css-conditional/container-queries/conditional-container-status.html index d0dfb97e9cb..23819c9a281 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/conditional-container-status.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/conditional-container-status.html @@ -19,7 +19,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function() { let s = getComputedStyle(document.querySelector('.grandchild')); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-computed.html b/tests/wpt/tests/css/css-conditional/container-queries/container-computed.html index fa56ab77402..7b74dccf7bd 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-computed.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-computed.html @@ -9,7 +9,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_computed_value('container', 'initial', 'none'); test_computed_value('container', 'inherit', 'none'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-for-shadow-dom.html b/tests/wpt/tests/css/css-conditional/container-queries/container-for-shadow-dom.html index d79b3a9d554..13a2423a822 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-for-shadow-dom.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-for-shadow-dom.html @@ -343,7 +343,7 @@ <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); }); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-inheritance.html b/tests/wpt/tests/css/css-conditional/container-queries/container-inheritance.html index 9fc8cadc3e4..b4efa1d5231 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-inheritance.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-inheritance.html @@ -11,7 +11,7 @@ <div id="target"></div> </div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); assert_not_inherited('container-name', 'none', 'foo'); assert_not_inherited('container-type', 'normal', 'inline-size'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-inner-at-rules.html b/tests/wpt/tests/css/css-conditional/container-queries/container-inner-at-rules.html index 4f0d6e02589..a6f2691d495 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-inner-at-rules.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-inner-at-rules.html @@ -17,7 +17,7 @@ </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-inside-multicol-with-table.html b/tests/wpt/tests/css/css-conditional/container-queries/container-inside-multicol-with-table.html index 1046d57ef25..af5ca305904 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-inside-multicol-with-table.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-inside-multicol-with-table.html @@ -27,7 +27,7 @@ </table> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-longhand-animation-type.html b/tests/wpt/tests/css/css-conditional/container-queries/container-longhand-animation-type.html index efc9a817d94..8be0c51332c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-longhand-animation-type.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-longhand-animation-type.html @@ -28,7 +28,7 @@ <div id=container> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(container).getPropertyValue('--ref'), 'PASS'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-name-computed.html b/tests/wpt/tests/css/css-conditional/container-queries/container-name-computed.html index abd2ebe0860..083e604cd5b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-name-computed.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-name-computed.html @@ -8,7 +8,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_computed_value('container-name', 'initial', 'none'); test_computed_value('container-name', 'unset', 'none'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-name-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-name-invalidation.html index e918f182e2c..f9c8267b212 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-name-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-name-invalidation.html @@ -38,7 +38,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function(t) { t.add_cleanup(() => { outer.style = ''; }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-name-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/container-name-parsing.html index 895b73ee66e..7cf6800b2e0 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-name-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-name-parsing.html @@ -8,7 +8,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_valid_value('container-name', 'initial'); test_valid_value('container-name', 'inherit'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-name-tree-scoped.html b/tests/wpt/tests/css/css-conditional/container-queries/container-name-tree-scoped.html index de633282e88..c2962ffa8d8 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-name-tree-scoped.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-name-tree-scoped.html @@ -88,7 +88,7 @@ <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); }); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-nested.html b/tests/wpt/tests/css/css-conditional/container-queries/container-nested.html index dfe30ac0ae1..c39672096ad 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-nested.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-nested.html @@ -26,7 +26,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <!-- diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/container-parsing.html index ab04102b569..185d39e9ccf 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-parsing.html @@ -9,7 +9,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_valid_value('container', 'initial'); test_valid_value('container', 'inherit'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-selection-unknown-features.html b/tests/wpt/tests/css/css-conditional/container-queries/container-selection-unknown-features.html index 5c2c67caaf1..ef9111ffdee 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-selection-unknown-features.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-selection-unknown-features.html @@ -30,7 +30,10 @@ <div id="t4">Green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => { + assert_implements_size_container_queries(); + assert_implements_style_container_queries(); + }); const green = "rgb(0, 128, 0)"; test(() => { assert_equals(getComputedStyle(t1).color, green); }, "width query with (foo: bar)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-selection.html b/tests/wpt/tests/css/css-conditional/container-queries/container-selection.html index d262da9ddfd..780dbd57cb2 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-selection.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-selection.html @@ -111,7 +111,7 @@ </main> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function test_query(prelude, selector, expected) { test(t => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation-after-load.html b/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation-after-load.html index 2d66b0990fd..ccf169872a7 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation-after-load.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation-after-load.html @@ -21,7 +21,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation.html index 14433c9c3cf..ae8885e8d62 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-size-invalidation.html @@ -22,7 +22,7 @@ </div> </main> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function() { assert_equals(getComputedStyle(child).color, 'rgb(255, 0, 0)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-size-nested-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-size-nested-invalidation.html index c13c80ed385..0b1bfc0c8a5 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-size-nested-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-size-nested-invalidation.html @@ -38,7 +38,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function() { assert_equals(getComputedStyle(outer_child).getPropertyValue('--outer'), 'true'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-size-shadow-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-size-shadow-invalidation.html index 4d2300701ae..dfcc827981e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-size-shadow-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-size-shadow-invalidation.html @@ -34,7 +34,7 @@ </div> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); }); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-type-computed.html b/tests/wpt/tests/css/css-conditional/container-queries/container-type-computed.html index 60d5ab5a05a..2612b15d66d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-type-computed.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-type-computed.html @@ -8,7 +8,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_computed_value('container-type', 'initial', 'normal'); test_computed_value('container-type', 'unset', 'normal'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-type-containment.html b/tests/wpt/tests/css/css-conditional/container-queries/container-type-containment.html index ba97b385d6c..f71fbde1112 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-type-containment.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-type-containment.html @@ -5,7 +5,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-type-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-type-invalidation.html index e4f02028a74..710292431ba 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-type-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-type-invalidation.html @@ -37,7 +37,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function(t) { t.add_cleanup(() => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-type-layout-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-type-layout-invalidation.html index 27c7b8a012d..81c3083af3e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-type-layout-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-type-layout-invalidation.html @@ -13,7 +13,7 @@ content </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function(t) { t.add_cleanup(() => { div.style = ''; }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-type-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/container-type-parsing.html index 1e106852c5b..711e00b0f93 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-type-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-type-parsing.html @@ -8,7 +8,7 @@ <script src="support/cq-testcommon.js"></script> <div id="target"></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test_valid_value('container-type', 'initial'); test_valid_value('container-type', 'inherit'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-animation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-animation.html index 79e59dc2a18..984009ebdfe 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-animation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-animation.html @@ -42,7 +42,7 @@ <div id=element_cqmax></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const units = ['cqw', 'cqh', 'cqi', 'cqb', 'cqmin', 'cqmax']; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-basic.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-basic.html index 84f55d550ea..2cf5e5c6b1a 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-basic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-basic.html @@ -20,7 +20,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function assert_unit_equals(element, actual, expected) { try { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-computational-independence.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-computational-independence.html index 94d786dfe51..0a6777c3a2d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-computational-independence.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-computational-independence.html @@ -6,7 +6,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const units = ['cqw', 'cqh', 'cqi', 'cqb', 'cqmin', 'cqmax']; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-content-box.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-content-box.html index 0fc18b3175f..b2657a2df06 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-content-box.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-content-box.html @@ -24,7 +24,7 @@ <div id=child2></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function assert_unit_equals(element, actual, expected) { try { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-dynamic.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-dynamic.html index 978d5a60051..ba8651d15f5 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-dynamic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-dynamic.html @@ -27,7 +27,7 @@ </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(child).getPropertyValue('--cqw'), ''); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-fallback.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-fallback.html index fe7af8e38ea..91ec82a2a59 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-fallback.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container-fallback.html @@ -44,7 +44,7 @@ </div> "></iframe> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container.html index 9faf62ffc0c..3403ea64061 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-in-at-container.html @@ -73,7 +73,7 @@ </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); let units = [ 'cqw', diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-ineligible-container.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-ineligible-container.html index 61565de6e28..e6a36461da3 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-ineligible-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-ineligible-container.html @@ -19,7 +19,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const cases = { "/* basic */": [20, 15], "display: table": [30, 25], diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-invalidation.html index 602f6b69dc2..b4036875d2b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-invalidation.html @@ -26,7 +26,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function assert_cqi_equals(element, expected) { assert_equals(getComputedStyle(element).paddingLeft, expected); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-media-queries.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-media-queries.html index b46e0cb715a..f9ed6eb8aa5 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-media-queries.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-media-queries.html @@ -15,7 +15,7 @@ <iframe id=iframe></iframe> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); const doc = iframe.contentDocument; const win = iframe.contentWindow; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-selection.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-selection.html index 66ab3e24580..cb69395b8b0 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-selection.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-selection.html @@ -26,7 +26,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function assert_unit_equals(element, actual, expected) { try { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-shadow.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-shadow.html index 3c672ad5426..d860e082585 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-shadow.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-shadow.html @@ -46,7 +46,7 @@ </div> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); }); test(() => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-small-viewport-fallback.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-small-viewport-fallback.html index d1c95d33b8f..c4761392c81 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-small-viewport-fallback.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-small-viewport-fallback.html @@ -32,7 +32,7 @@ "></iframe> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-svglength.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-svglength.html index e39c21e3461..4b25b79bf54 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-svglength.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-svglength.html @@ -27,7 +27,7 @@ </div> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); container.offsetTop; }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/container-units-typed-om.html b/tests/wpt/tests/css/css-conditional/container-queries/container-units-typed-om.html index 4ebb3518ac2..935b5411a36 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/container-units-typed-om.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/container-units-typed-om.html @@ -7,7 +7,7 @@ <script src="support/cq-testcommon.js"></script> <div id=element></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const units = ['cqw', 'cqh', 'cqi', 'cqb', 'cqmin', 'cqmax']; const functions = { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/counters-flex-circular.html b/tests/wpt/tests/css/css-conditional/container-queries/counters-flex-circular.html index 04af2e2dc06..661c9a9b3f6 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/counters-flex-circular.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/counters-flex-circular.html @@ -49,7 +49,7 @@ <div id="item2"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const item1_width = parseInt(getComputedStyle(item1).width); const item2_width = parseInt(getComputedStyle(item2).width); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-queries.html b/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-queries.html index 17ee5b4184b..2b3dd78fe5e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-queries.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-queries.html @@ -30,6 +30,11 @@ </div> </div> <script> + setup(() => { + assert_implements_style_container_queries(); + assert_implements_size_container_queries(); + }); + const green = "rgb(0, 128, 0)"; function test_evaluation(name, query, expected) { @@ -55,7 +60,10 @@ }, `${name} ${query}`); } - setup(() => assert_implements_container_queries()); + setup(() => { + assert_implements_style_container_queries(); + assert_implements_size_container_queries(); + }); test_evaluation('', 'style(--inner: true)', true); test_evaluation('', 'style(--inner:true)', true); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-query-change.html b/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-query-change.html index ac15092b4cd..13280e35803 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-query-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/custom-property-style-query-change.html @@ -21,7 +21,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); const green = "rgb(0, 128, 0)"; const red = "rgb(255, 0, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/deep-nested-inline-size-containers.html b/tests/wpt/tests/css/css-conditional/container-queries/deep-nested-inline-size-containers.html index 40012b41f21..6f311401b9c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/deep-nested-inline-size-containers.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/deep-nested-inline-size-containers.html @@ -11,7 +11,7 @@ <div id="outer" class="container"></div> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); // Create 50 nested inline-size containers where a child container is 1px // narrower than its parent diff --git a/tests/wpt/tests/css/css-conditional/container-queries/display-contents-dynamic-style-queries.html b/tests/wpt/tests/css/css-conditional/container-queries/display-contents-dynamic-style-queries.html index 466992f628f..ca4879bfc01 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/display-contents-dynamic-style-queries.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/display-contents-dynamic-style-queries.html @@ -22,7 +22,7 @@ <div id="target">This should be green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); test(() => { assert_equals(getComputedStyle(target).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/display-contents.html b/tests/wpt/tests/css/css-conditional/container-queries/display-contents.html index 3dd50caff38..bcb93171f90 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/display-contents.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/display-contents.html @@ -6,7 +6,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> .container { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/display-none.html b/tests/wpt/tests/css/css-conditional/container-queries/display-none.html index 4949cbbb715..22b8fbedab5 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/display-none.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/display-none.html @@ -6,7 +6,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> .container { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-calc-dynamic.html b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-calc-dynamic.html index 927dda9ffa1..fd807c2232c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-calc-dynamic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-calc-dynamic.html @@ -25,7 +25,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).color, 'rgb(255, 0, 0)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units-dynamic.html b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units-dynamic.html index 60c668a71c7..a9983d2f028 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units-dynamic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units-dynamic.html @@ -6,7 +6,7 @@ <script src="support/cq-testcommon.js"></script> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); // Inflate a <template> subtree into #main, run the test function, // then clean up. diff --git a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units.html b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units.html index 38d19028255..3d676402e1e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/font-relative-units.html @@ -100,7 +100,7 @@ <div id="rlh_test"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; test(() => assert_equals(getComputedStyle(em_test).color, green), "em relative inline-size"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/fragmented-container-001.html b/tests/wpt/tests/css/css-conditional/container-queries/fragmented-container-001.html index f5f4d7de7bd..3db0ea22987 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/fragmented-container-001.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/fragmented-container-001.html @@ -38,7 +38,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/get-animations.html b/tests/wpt/tests/css/css-conditional/container-queries/get-animations.html index 228f52ecf58..1cfa0a7773f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/get-animations.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/get-animations.html @@ -22,7 +22,7 @@ <div id=div>Green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(div).color, 'rgb(255, 0, 0)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/grid-container.html b/tests/wpt/tests/css/css-conditional/container-queries/grid-container.html index c7002f696f6..ee9838e6cf4 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/grid-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/grid-container.html @@ -20,7 +20,7 @@ <div id="item2"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(item1).color, "rgb(0, 128, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/grid-item-container.html b/tests/wpt/tests/css/css-conditional/container-queries/grid-item-container.html index f097c18b2ae..70ce6c16a6c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/grid-item-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/grid-item-container.html @@ -29,7 +29,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target1).color, "rgb(0, 128, 0)", "First item container should be 200px wide"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/iframe-in-container-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/iframe-in-container-invalidation.html index 4c904d2d4b4..64be52980a2 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/iframe-in-container-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/iframe-in-container-invalidation.html @@ -36,7 +36,7 @@ "></iframe> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/iframe-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/iframe-invalidation.html index c68fd4b16a9..58c2cd7330d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/iframe-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/iframe-invalidation.html @@ -26,7 +26,7 @@ </div> "></iframe> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/ineligible-containment.html b/tests/wpt/tests/css/css-conditional/container-queries/ineligible-containment.html index 1e1cace51e7..20b49299428 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/ineligible-containment.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/ineligible-containment.html @@ -29,7 +29,7 @@ </div> </main> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function(t) { // #inner1 is the container, but it does not satisfy the containment diff --git a/tests/wpt/tests/css/css-conditional/container-queries/inheritance-from-container.html b/tests/wpt/tests/css/css-conditional/container-queries/inheritance-from-container.html index 4b815d68aa3..8bf69adff1b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/inheritance-from-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/inheritance-from-container.html @@ -20,7 +20,7 @@ </style> <div id=outer><div id=container><span id=inner>PASS</span></div></div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); test((t) => { assert_equals(getComputedStyle(inner).visibility, "hidden"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-and-min-width.html b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-and-min-width.html index 91e8c48a93a..f895f9aadd1 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-and-min-width.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-and-min-width.html @@ -18,7 +18,7 @@ <div id="child">Green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(child).color, "rgb(0, 128, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment-vertical-rl.html b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment-vertical-rl.html index 44fa62c7935..794268655ad 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment-vertical-rl.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment-vertical-rl.html @@ -23,7 +23,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(()=> { ancestry.style.height = "100px"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment.html b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment.html index 154a0a47ce1..3c94640bf07 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/inline-size-containment.html @@ -22,7 +22,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(()=> { ancestry.style.width = "100px"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/layout-dependent-focus.html b/tests/wpt/tests/css/css-conditional/container-queries/layout-dependent-focus.html index 3e28f4a1da1..bc8b9b8dc0b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/layout-dependent-focus.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/layout-dependent-focus.html @@ -22,7 +22,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); let hide_test = async_test("Verify that onblur is called on hidden input"); onload = () => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/multicol-container-001.html b/tests/wpt/tests/css/css-conditional/container-queries/multicol-container-001.html index 9785b6b0c62..714c3b95726 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/multicol-container-001.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/multicol-container-001.html @@ -21,7 +21,7 @@ <div id="second-child">Second</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/nested-query-containers.html b/tests/wpt/tests/css/css-conditional/container-queries/nested-query-containers.html index 348e3d1529e..b45bafc9bef 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/nested-query-containers.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/nested-query-containers.html @@ -14,7 +14,7 @@ <body> <script> promise_setup(() => { - assert_implements_container_queries(); + assert_implements_size_container_queries(); return new Promise(resolve => { addEventListener("load", () => { requestAnimationFrame(() => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/nested-size-style-container-invalidation.html b/tests/wpt/tests/css/css-conditional/container-queries/nested-size-style-container-invalidation.html index 87256703884..c22a1a3068b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/nested-size-style-container-invalidation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/nested-size-style-container-invalidation.html @@ -27,7 +27,10 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => { + assert_implements_size_container_queries(); + assert_implements_style_container_queries(); + }); test(() => { assert_equals(getComputedStyle(target).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/never-match-container.html b/tests/wpt/tests/css/css-conditional/container-queries/never-match-container.html index 5acded7cc5a..d8557aa2cb1 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/never-match-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/never-match-container.html @@ -5,7 +5,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> #outer-container { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/orthogonal-wm-container-query.html b/tests/wpt/tests/css/css-conditional/container-queries/orthogonal-wm-container-query.html index 630226500ef..c3a4026f7d7 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/orthogonal-wm-container-query.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/orthogonal-wm-container-query.html @@ -24,7 +24,7 @@ <div id="orthogonal">XX</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(orthogonal.offsetWidth, container.offsetWidth); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/percentage-padding-orthogonal.html b/tests/wpt/tests/css/css-conditional/container-queries/percentage-padding-orthogonal.html index dac71be0bca..e468505e6b0 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/percentage-padding-orthogonal.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/percentage-padding-orthogonal.html @@ -45,7 +45,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => assert_equals(padded.offsetHeight, 100), "#container height measured with 500px width. Both container children visible"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-001.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-001.html index e147da5d9e8..8d66eb0045d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-001.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-001.html @@ -30,7 +30,7 @@ </ol> </main> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(function() { let div = document.querySelector('#container1 > div'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-003.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-003.html index d7bec8a6e18..909a3215566 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-003.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-003.html @@ -34,7 +34,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; const lime = "rgb(0, 255, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-004.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-004.html index 6c0babfae23..0a4ce52b8d1 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-004.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-004.html @@ -29,7 +29,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; const red = "rgb(255, 0, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-005.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-005.html index 163349adc86..a357a13be9e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-005.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-005.html @@ -19,7 +19,7 @@ </style> <div id="c1"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); test(() => { let style = getComputedStyle(c1, "::before"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-006.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-006.html index 39c00d70dc2..dee9db64667 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-006.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-006.html @@ -34,7 +34,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target, "::before").fontSize, "20px"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-007.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-007.html index 575cb73af65..1bcd4359459 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-007.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-007.html @@ -29,7 +29,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const pseudo_elements = ["::before", "::after", "::marker", "::first-line", "::first-letter", "::backdrop"]; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-008.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-008.html index dfa07922368..6db12a18294 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-008.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-008.html @@ -31,7 +31,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target, "::before").fontSize, "20px"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-013.html b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-013.html index e41fc7611a4..1036c62ee5d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-013.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/pseudo-elements-013.html @@ -25,7 +25,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target, "::highlight(foo)").textDecorationThickness, "0px"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/query-content-box.html b/tests/wpt/tests/css/css-conditional/container-queries/query-content-box.html index 5b83944d2f8..1ed98ba1d56 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/query-content-box.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/query-content-box.html @@ -89,7 +89,7 @@ <div class="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; const blue = "rgb(0, 0, 255)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation-style.html b/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation-style.html index 75876dd1ac3..585d5e7742b 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation-style.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation-style.html @@ -14,7 +14,7 @@ <div id=inner></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function test_query(query, expected) { test((t) => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation.html b/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation.html index d5c77c3a7e4..68d803be2c4 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/query-evaluation.html @@ -16,7 +16,7 @@ <div id=inner></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function test_query(query, expected) { test((t) => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/reattach-container-with-dirty-child.html b/tests/wpt/tests/css/css-conditional/container-queries/reattach-container-with-dirty-child.html index 914155a6602..5a4b9e311bd 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/reattach-container-with-dirty-child.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/reattach-container-with-dirty-child.html @@ -19,7 +19,7 @@ <div id="child"><span id="inner">XXX</span></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { container.offsetTop; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/registered-color-style-queries.html b/tests/wpt/tests/css/css-conditional/container-queries/registered-color-style-queries.html index fd663d2c2d8..dc1393ba05c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/registered-color-style-queries.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/registered-color-style-queries.html @@ -29,6 +29,8 @@ <div id="t2"></div> </div> <script> + setup(() => assert_implements_style_container_queries()); + const green = "rgb(0, 128, 0)"; test(() => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-parsing.html index 5c15a825853..e45326a2ffe 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-parsing.html @@ -9,7 +9,7 @@ <main id="cq-main"></main> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); test_cq_condition_known('scroll-state(overflowing)'); test_cq_condition_known('scroll-state(overflowing: none)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-serialization.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-serialization.html index f55cfeb6343..75a2be3bb78 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-serialization.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-overflowing-serialization.html @@ -14,7 +14,7 @@ </style> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_scroll_state_container_queries(); assert_equals(testSheet.sheet.cssRules.length, 5); }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-parsing.html index 0a8fe50bc38..adeace0a7d4 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-parsing.html @@ -8,7 +8,7 @@ <main id="cq-main"></main> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); test_cq_condition_known('scroll-state(snapped)'); test_cq_condition_known('scroll-state(snapped: x)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-serialization.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-serialization.html index 59cc3d37f4f..748b5e3d1ac 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-serialization.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-snapped-serialization.html @@ -14,7 +14,7 @@ </style> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_scroll_state_container_queries(); assert_equals(testSheet.sheet.cssRules.length, 5); }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-parsing.html index a3a1f01458d..c1e0b0b1807 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-parsing.html @@ -8,7 +8,7 @@ <main id="cq-main"></main> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); test_cq_condition_known('scroll-state(stuck)'); test_cq_condition_known('scroll-state(stuck: none)'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-serialization.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-serialization.html index d5abede45c2..85585130c1e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-serialization.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/at-container-stuck-serialization.html @@ -14,7 +14,7 @@ </style> <script> setup(() => { - assert_implements_container_queries(); + assert_implements_scroll_state_container_queries(); assert_equals(testSheet.sheet.cssRules.length, 5); }); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html index 4e80712beab..4e156db4e8c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-computed.html @@ -8,8 +8,6 @@ <script src="/css/css-conditional/container-queries/support/cq-testcommon.js"></script> <div id="target"></div> <script> - setup(() => assert_implements_container_queries()); - test_computed_value('container-type', 'scroll-state'); test_computed_value('container-type', 'scroll-state size', 'size scroll-state'); test_computed_value('container-type', 'inline-size scroll-state'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-parsing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-parsing.html index 7f3779bc39d..4a982433536 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-parsing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/container-type-scroll-state-parsing.html @@ -8,7 +8,7 @@ <script src="/css/css-conditional/container-queries/support/cq-testcommon.js"></script> <div id="target"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); test_valid_value('container-type', 'scroll-state'); test_valid_value('container-type', 'size scroll-state'); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-overflowing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-overflowing.html index 91e45c79403..fe26333e55c 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-overflowing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-overflowing.html @@ -65,7 +65,7 @@ <span id="t8"></span> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-snapped.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-snapped.html index 64a171c361e..c427e2dd569 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-snapped.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-snapped.html @@ -37,7 +37,7 @@ </div> <div id="filler-after"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-stuck.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-stuck.html index c0d59b61e76..9319e8ce1d9 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-stuck.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-initially-stuck.html @@ -25,7 +25,7 @@ <span id="target">My container is stuck</span> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-change.html index ae0fd155f4c..15cdc96421f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-change.html @@ -32,7 +32,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-container-type-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-container-type-change.html index a011da4039d..ecb12141603 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-container-type-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-container-type-change.html @@ -25,7 +25,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-layout-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-layout-change.html index 39181292ff7..72344e2943d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-layout-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-layout-change.html @@ -29,7 +29,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html new file mode 100644 index 00000000000..cb2638c5c12 --- /dev/null +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-pseudo.html @@ -0,0 +1,60 @@ +<!DOCTYPE html> +<title>@container: scroll-state(overflowing) for pseudo element</title> +<link rel="help" href="https://drafts.csswg.org/css-conditional-5/#overflowing"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/css-conditional/container-queries/support/cq-testcommon.js"></script> +<script src="/css/css-transitions/support/helper.js"></script> +<style> + #scroller { + container-type: scroll-state; + overflow: auto; + width: 100px; + height: 100px; + } + #wrapper { + width: 10px; + height: 10px; + } + #wrapper.large { + width: 75px; + height: 75px; + } + #target { + width: 200%; + height: 200%; + --before: no; + --after: no; + @container scroll-state(overflowing) { + &::before { + --before: yes; + content: " "; + } + &::after { + --after: yes; + } + } + } +</style> +<div id="scroller"> + <div id="wrapper"> + <div id="target"></div> + </div> +</div> +<script> + setup(() => assert_implements_scroll_state_container_queries()); + + promise_test(async t => { + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(target, "::before").getPropertyValue("--before"), "no"); + assert_equals(getComputedStyle(target, "::after").getPropertyValue("--after"), "no"); + }, "::before/::after initially not matching"); + + promise_test(async t => { + wrapper.className = "large"; + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(target, "::before").getPropertyValue("--before"), "yes"); + assert_equals(getComputedStyle(target, "::after").getPropertyValue("--after"), "yes"); + }, "::before/::after matching after content starts overflowing #scroller"); + +</script> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-wm.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-wm.html index 46b2a590782..137808db805 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-wm.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-overflowing-wm.html @@ -53,7 +53,7 @@ <div class="overflowing v vrl ltr"><span class="target"></span></div> <div class="overflowing v vrl rtl"><span class="target"></span></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); function match_overflowing(container_selector, expected_matches) { let scroller = document.querySelector(container_selector + " .target"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-change.html index 6e9843b8b75..5dfea29404f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-change.html @@ -36,7 +36,7 @@ </div> <div id="filler"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-container-type-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-container-type-change.html index 4eb5de2679e..81ed4998011 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-container-type-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-container-type-change.html @@ -38,7 +38,7 @@ </div> <div id="filler-after"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-layout-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-layout-change.html index 26392239cde..e1f2f687a8e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-layout-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-layout-change.html @@ -39,7 +39,7 @@ </div> <div id="filler-after"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-none.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-none.html index 8c7aae56beb..60efb78082d 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-none.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-none.html @@ -17,7 +17,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); test(() => { assert_equals(getComputedStyle(target).getPropertyValue("--snapped-none"), "true"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html new file mode 100644 index 00000000000..1d7aaafcf30 --- /dev/null +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-pseudo.html @@ -0,0 +1,61 @@ +<!DOCTYPE html> +<title>@container: scroll-state(snapped) layout change</title> +<link rel="help" href="https://drafts.csswg.org/css-conditional-5/#snapped"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/css-conditional/container-queries/support/cq-testcommon.js"></script> +<script src="/css/css-transitions/support/helper.js"></script> +<style> + :root { + scroll-snap-type: block proximity; + } + body { + margin: 0; + } + #filler-before { + height: 10px; + } + #filler-after { + height: 10000px; + } + #snapped { + position: relative; + top: 3000px; /* Should be enough to not snap for proximity */ + container-type: scroll-state inline-size; + scroll-snap-align: start; + --before: no; + --after: no; + @container scroll-state(snapped) { + &::before { + --before: yes; + content: " "; + } + &::after { + --after: yes; + } + } + } +</style> +<div id="filler-before"></div> +<div id="snapped"></div> +<div id="filler-after"></div> +<script> + setup(() => { + assert_implements_scroll_state_container_queries(); + assert_implements_size_container_queries(); + }); + + promise_test(async t => { + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(snapped, "::before").getPropertyValue("--before"), "no"); + assert_equals(getComputedStyle(snapped, "::after").getPropertyValue("--after"), "no"); + }, "Initially, snapped query does not match and ::before/::after do not apply"); + + promise_test(async t => { + snapped.style.top = "auto"; + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(snapped, "::before").getPropertyValue("--before"), "yes"); + assert_equals(getComputedStyle(snapped, "::after").getPropertyValue("--after"), "yes"); + }, "::before/::after depending on snapped query"); + +</script> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-snap-changing.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-snap-changing.html index 161c2e1368d..85f678f07e1 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-snap-changing.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-snap-changing.html @@ -31,7 +31,7 @@ </div> <div id="filler"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); let changeTarget; let changingTarget; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-wm.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-wm.html index b6703e81142..10bfd83b3ab 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-wm.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-snapped-wm.html @@ -47,7 +47,7 @@ </div> <div id="filler-after"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-container-type-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-container-type-change.html index 9c6df648322..f29b46e90f7 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-container-type-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-container-type-change.html @@ -28,7 +28,7 @@ <span id="target">My container is stuck</span> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-layout-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-layout-change.html index 9d5b8195eed..a2297c8122e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-layout-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-layout-change.html @@ -34,7 +34,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html new file mode 100644 index 00000000000..f6a89e12000 --- /dev/null +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-pseudo.html @@ -0,0 +1,57 @@ +<!DOCTYPE html> +<title>@container: scroll-state(stuck) for pseudo element</title> +<link rel="help" href="https://drafts.csswg.org/css-conditional-5/#stuck"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/css-conditional/container-queries/support/cq-testcommon.js"></script> +<script src="/css/css-transitions/support/helper.js"></script> +<style> + #scroller { + overflow-y: scroll; + height: 200px; + } + #filler { + height: 100px; + } + #stuck { + #inner { + height: 50px; + } + container-type: scroll-state; + position: sticky; + bottom: 0; + --before: no; + --after: no; + @container scroll-state(stuck: bottom) { + &::before { + --before: yes; + content: " "; + } + &::after { + --after: yes; + } + } + } +</style> +<div id="scroller"> + <div id="filler"></div> + <div id="stuck"> + <div id="inner"></div> + </div> +</div> +<script> + setup(() => assert_implements_scroll_state_container_queries()); + + promise_test(async t => { + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(stuck, "::before").getPropertyValue("--before"), "no"); + assert_equals(getComputedStyle(stuck, "::after").getPropertyValue("--after"), "no"); + }, "Initially, stuck query does not match and ::before/::after do not apply"); + + promise_test(async t => { + inner.style.height = "150px"; + await waitForAnimationFrames(2); + assert_equals(getComputedStyle(stuck, "::before").getPropertyValue("--before"), "yes"); + assert_equals(getComputedStyle(stuck, "::after").getPropertyValue("--after"), "yes"); + }, "::before/::after depending on stuck query"); +</script> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-writing-direction.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-writing-direction.html index eb0c1c4a84e..a082207aca7 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-writing-direction.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-stuck-writing-direction.html @@ -42,7 +42,7 @@ <div id="target"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-target-query-change.html b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-target-query-change.html index 33459f470b9..605b398b7a9 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-target-query-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/scroll-state/scroll-state-target-query-change.html @@ -25,7 +25,7 @@ </div> <div id="filler"></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_scroll_state_container_queries()); promise_test(async t => { await waitForAnimationFrames(2); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/sibling-layout-dependency.html b/tests/wpt/tests/css/css-conditional/container-queries/sibling-layout-dependency.html index eb3df2ba410..1cef872d60f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/sibling-layout-dependency.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/sibling-layout-dependency.html @@ -7,7 +7,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/size-container-no-principal-box.html b/tests/wpt/tests/css/css-conditional/container-queries/size-container-no-principal-box.html index 730bb1d7361..cca59a434cd 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/size-container-no-principal-box.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/size-container-no-principal-box.html @@ -35,7 +35,7 @@ <div id="inner_contents"><span></span></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(ref).color, "rgb(0, 128, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/size-container-writing-mode-change.html b/tests/wpt/tests/css/css-conditional/container-queries/size-container-writing-mode-change.html index dd709388b7d..33047dbb758 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/size-container-writing-mode-change.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/size-container-writing-mode-change.html @@ -23,7 +23,7 @@ <div id="target">Should be green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/size-feature-evaluation.html b/tests/wpt/tests/css/css-conditional/container-queries/size-feature-evaluation.html index 282233dec9d..4ea81271fd2 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/size-feature-evaluation.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/size-feature-evaluation.html @@ -12,7 +12,7 @@ </div> <script> -setup(() => assert_implements_container_queries()); +setup(() => assert_implements_size_container_queries()); function test_evaluation(container_class, query, expected) { test(function(t) { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-change-in-container.html b/tests/wpt/tests/css/css-conditional/container-queries/style-change-in-container.html index abbb1266e69..612c387a6d3 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-change-in-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-change-in-container.html @@ -14,7 +14,7 @@ <div id="content"></div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); let content = document.getElementById("content"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-container-for-shadow-dom.html b/tests/wpt/tests/css/css-conditional/container-queries/style-container-for-shadow-dom.html index 22ab9b9c3e8..5ff49d37909 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-container-for-shadow-dom.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-container-for-shadow-dom.html @@ -190,7 +190,7 @@ <script> setup(() => { - assert_implements_container_queries(); + assert_implements_style_container_queries(); }); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-container-invalidation-inheritance.html b/tests/wpt/tests/css/css-conditional/container-queries/style-container-invalidation-inheritance.html index 9d2ab561101..2986b8461b9 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-container-invalidation-inheritance.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-container-invalidation-inheritance.html @@ -26,7 +26,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); test(() => { assert_equals(getComputedStyle(inner).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-not-sharing-float.html b/tests/wpt/tests/css/css-conditional/container-queries/style-not-sharing-float.html index c3633949113..2931113726f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-not-sharing-float.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-not-sharing-float.html @@ -31,7 +31,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(target1).color, "rgb(0, 255, 0)", "Second item container should be 100px wide"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-query-document-element.html b/tests/wpt/tests/css/css-conditional/container-queries/style-query-document-element.html index ff370a9b26d..8ea959487b7 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-query-document-element.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-query-document-element.html @@ -14,10 +14,7 @@ </style> <body id="body"> <script> - setup(() => assert_implements_container_queries()); - test(() => { assert_equals(getComputedStyle(body).color, "rgb(0, 128, 0)"); }, "style query should evaluate to true"); </script> - diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-query-no-cycle.html b/tests/wpt/tests/css/css-conditional/container-queries/style-query-no-cycle.html index 5a179d38976..fc7d658759e 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-query-no-cycle.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-query-no-cycle.html @@ -14,7 +14,7 @@ <div id="target">Should be green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_style_container_queries()); test(() => { assert_equals(getComputedStyle(target).color, "rgb(0, 128, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/style-query-with-unknown-width.html b/tests/wpt/tests/css/css-conditional/container-queries/style-query-with-unknown-width.html index 52f250c2d0d..3791369436f 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/style-query-with-unknown-width.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/style-query-with-unknown-width.html @@ -18,7 +18,10 @@ <div id="target">Should be green</div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => { + assert_implements_style_container_queries(); + assert_implements_size_container_queries(); + }); test(() => { assert_equals(getComputedStyle(target).color, "rgb(0, 128, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/support/cq-testcommon.js b/tests/wpt/tests/css/css-conditional/container-queries/support/cq-testcommon.js index 672a7e9646e..a9b7b92ae52 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/support/cq-testcommon.js +++ b/tests/wpt/tests/css/css-conditional/container-queries/support/cq-testcommon.js @@ -1,5 +1,25 @@ -function assert_implements_container_queries() { - assert_implements(CSS.supports("container-type:size"), "Basic support for container queries required"); +function assert_implements_size_container_queries() { + assert_implements(CSS.supports("container-type:size"), + "Basic support for size container queries required"); +} + +function assert_implements_scroll_state_container_queries() { + assert_implements(CSS.supports("container-type:scroll-state"), + "Basic support for scroll-state container queries required"); +} + +function assert_implements_style_container_queries() { + // TODO: Replace with CSS.supports() when/if this can be expressed with at-rule(). + const sheet = new CSSStyleSheet(); + // No support means the style() function is <general-enclosed> which should + // affect serialization. Although serialization for <general-enclosed> is not + // specified[1], unknown function names are unlikely to be resolved to be + // serialized lower-case. Also, keeping the case is currently interoperable. + // + // [1] https://github.com/w3c/csswg-drafts/issues/7266 + sheet.replaceSync('@container STYLE(--foo: bar){}'); + assert_implements(sheet.cssRules[0].containerQuery === "style(--foo: bar)", + "Basic support for style container queries required"); } function cleanup_container_query_main() { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/svg-foreignobject-child-container.html b/tests/wpt/tests/css/css-conditional/container-queries/svg-foreignobject-child-container.html index 8dc98a6321c..95dde8d3a02 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/svg-foreignobject-child-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/svg-foreignobject-child-container.html @@ -28,7 +28,7 @@ </foreignObject> </svg> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/svg-root-size-container.html b/tests/wpt/tests/css/css-conditional/container-queries/svg-root-size-container.html index ccdcf557d51..68b34fb2125 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/svg-root-size-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/svg-root-size-container.html @@ -22,7 +22,7 @@ </foreignObject> </svg> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog-container.html b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog-container.html index 40a611bc918..9920f1957be 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog-container.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog-container.html @@ -20,7 +20,7 @@ <dialog id="dialog"><span id="child"></span></dialog> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(child).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog.html b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog.html index 255b42acff6..6a9a297896a 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-dialog.html @@ -22,7 +22,7 @@ <dialog id="dialog"></dialog> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(dialog).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-nested-dialog.html b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-nested-dialog.html index a988efe02f6..b70ee7c29bd 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/top-layer-nested-dialog.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/top-layer-nested-dialog.html @@ -21,7 +21,7 @@ </dialog> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { assert_equals(getComputedStyle(outer).color, "rgb(255, 0, 0)"); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/transition-scrollbars.html b/tests/wpt/tests/css/css-conditional/container-queries/transition-scrollbars.html index 9d3f3a1c6c6..45ef9f7c7a4 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/transition-scrollbars.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/transition-scrollbars.html @@ -46,7 +46,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { // Whether or not a scrollbar appeared is out of scope for this test. diff --git a/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event-002.html b/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event-002.html index f5b32c6fa0e..64b3521d534 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event-002.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event-002.html @@ -35,7 +35,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); test(() => { outer.offsetTop; diff --git a/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event.html b/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event.html index 8940284f990..1034c554686 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/transition-style-change-event.html @@ -29,7 +29,7 @@ </div> </div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const t = async_test(""); const event_handler = t.step_func_done((e) => { diff --git a/tests/wpt/tests/css/css-conditional/container-queries/unsupported-axis.html b/tests/wpt/tests/css/css-conditional/container-queries/unsupported-axis.html index 80bbf9776df..02c6f22c3c3 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/unsupported-axis.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/unsupported-axis.html @@ -5,7 +5,7 @@ <script src="/resources/testharnessreport.js"></script> <script src="support/cq-testcommon.js"></script> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); </script> <style> diff --git a/tests/wpt/tests/css/css-conditional/container-queries/viewport-units-dynamic.html b/tests/wpt/tests/css/css-conditional/container-queries/viewport-units-dynamic.html index 10f65efc0ae..3acef812adf 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/viewport-units-dynamic.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/viewport-units-dynamic.html @@ -34,7 +34,7 @@ <div id=vh><span>Green</span></div> "></iframe> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); function waitForLoad(w) { return new Promise(resolve => w.addEventListener('load', resolve)); diff --git a/tests/wpt/tests/css/css-conditional/container-queries/viewport-units.html b/tests/wpt/tests/css/css-conditional/container-queries/viewport-units.html index 498a9c7eb2d..9be28fec894 100644 --- a/tests/wpt/tests/css/css-conditional/container-queries/viewport-units.html +++ b/tests/wpt/tests/css/css-conditional/container-queries/viewport-units.html @@ -24,7 +24,7 @@ <div id="vw"><span>Green</span></div> <div id="vh"><span>Green</span></div> <script> - setup(() => assert_implements_container_queries()); + setup(() => assert_implements_size_container_queries()); const green = "rgb(0, 128, 0)"; diff --git a/tests/wpt/tests/css/css-conditional/js/supports-at-rule.tentative.html b/tests/wpt/tests/css/css-conditional/js/supports-at-rule.tentative.html new file mode 100644 index 00000000000..84214c385cd --- /dev/null +++ b/tests/wpt/tests/css/css-conditional/js/supports-at-rule.tentative.html @@ -0,0 +1,80 @@ +<!doctype html> +<title>@supports at-rule</title> +<link rel="help" href="https://www.w3.org/TR/css-conditional-4/#the-css-namespace"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> + function test_supports(rule, expected, desc) { + test(() => { + assert_equals(CSS.supports(rule), expected, 'CSS.supports(' + rule + ')'); + }, desc); + } + + // Basic at-rule support. + test_supports("at-rule(@supports)", true); + test_supports("at-rule( @supports)", true); + test_supports("at-rule(@supports )", true); + test_supports("at-rule(@media)", true); + test_supports("at-rule(@counter-style)", true); + test_supports("at-rule(@doesnotexist)", false); + + // With descriptors. + test_supports("at-rule(@counter-style; system: fixed)", true); + test_supports("at-rule(@counter-style;system: fixed )", true); + test_supports("at-rule(@counter-style;system: fixed )", true); + test_supports("at-rule(@counter-style; system:)", false, "missing value 1"); + test_supports("at-rule(@counter-style; system: )", false, "missing value 2"); + test_supports("at-rule(@counter-style; system: doesnotexist)", false, "invalid value"); + test_supports("at-rule(@counter-style; system: fixed junk)", false, "junk after value"); + test_supports("at-rule(@counter-style; system)", false, "missing value 3"); + test_supports("at-rule(@counter-style! system: fixed)", false, "invalid separator"); + test_supports("at-rule(@counter-style; suffix: \"abc\")", true, "quoted value is OK"); + test_supports("at-rule(@counter-style; suffix: \"abc\";)", false, "semicolon after value"); + test_supports("at-rule(@counter-style; suffix: \"abc\"", true, "implicit end parenthesis"); + test_supports("at-rule(@counter-style; system: fixed; system: fixed)", false, "multiple descriptors"); + test_supports("at-rule(@supports; system: fixed)", false, "descriptor invalid in context"); + + // Properties are not descriptors. + test_supports("at-rule(@supports; color: red)", false); + test_supports("at-rule(@media; color: red)", false); + test_supports("at-rule(@counter-style; color: red)", false); + test_supports("at-rule(@font-fact; color: red)", false); + test_supports("at-rule(@property; color: red)", false); + test_supports("at-rule(@font-palette-values; color: red)", false); + test_supports("at-rule(@view-transition; color: red)", false); + + // More descriptors. + test_supports("at-rule(@font-face; font-family: 'Ariana Grande')", true); + test_supports("at-rule(@font-face; font-style: italic)", true); + test_supports("at-rule(@font-face; font-weight: normal)", true); + test_supports("at-rule(@font-face; font-feature-settings: \"kern\" 1)", true); + test_supports("at-rule(@font-face; font-display: swap)", true); + test_supports("at-rule(@font-face; font-variant: small-caps)", true); + test_supports("at-rule(@font-face; src: url(/foo.ttf))", true); + test_supports("at-rule(@font-face; unicode-range: U+41-5A)", true); + test_supports("at-rule(@font-face; ascent-override: 80%)", true); + test_supports("at-rule(@font-face; descent-override: 20%)", true); + test_supports("at-rule(@font-face; line-gap-override: normal)", true); + test_supports("at-rule(@font-face; size-adjust: 150%)", true); + test_supports("at-rule(@property; syntax: \"*\")", true); + test_supports("at-rule(@property; syntax: \"<unknown>\")", false); + test_supports("at-rule(@property; initial-value: #fff)", true); + test_supports("at-rule(@property; inherits: true)", true); + test_supports("at-rule(@counter-style; system: extends upper-roman)", true); + test_supports("at-rule(@counter-style; negative: '(' ')'", true); + test_supports("at-rule(@counter-style; prefix: \"a\")", true); + test_supports("at-rule(@counter-style; suffix: \"b\")", true); + test_supports("at-rule(@counter-style; range: infinite infinite", true); + test_supports("at-rule(@counter-style; pad: 3 '0')", true); + test_supports("at-rule(@counter-style; fallback: foo)", true); + test_supports("at-rule(@counter-style; symbols: 'X')", true); + test_supports("at-rule(@counter-style; additive-symbols: 1 'I', calc(-1) 'X')", true); + test_supports("at-rule(@counter-style; speak-as: words)", true); + test_supports("at-rule(@font-palette-values; font-family: 'Fontfontfont')", true); + test_supports("at-rule(@font-palette-values; base-palette: 7)", true); + test_supports("at-rule(@font-palette-values; override-colors: 3 blue, 1 brown)", true); + test_supports("at-rule(@view-transition; navigation: auto)", true); + test_supports("at-rule(@view-transition; types: check)", true); + + // TODO: Should we include e.g. @page; page-orientation? +</script> diff --git a/tests/wpt/tests/css/css-grid/layout-algorithm/grid-fit-content-percentage.html b/tests/wpt/tests/css/css-grid/layout-algorithm/grid-fit-content-percentage.html index 892dbe40b46..22683fef14f 100644 --- a/tests/wpt/tests/css/css-grid/layout-algorithm/grid-fit-content-percentage.html +++ b/tests/wpt/tests/css/css-grid/layout-algorithm/grid-fit-content-percentage.html @@ -36,30 +36,34 @@ function clamp(value, min, max) { } const minContent = 50; const maxContent = 100; -for (const use_calc of [false, true]) { - for (const percentage of [0, 50, 75, 100, 150]) { - const value = use_calc ? `fit-content(calc(0px + ${percentage}%))` - : `fit-content(${percentage}%)`; - const container = document.createElement("div"); - container.className = "container"; - document.body.appendChild(container); - const grid = document.createElement("div"); - grid.className = "grid"; - grid.style.gridTemplateColumns = value; - container.appendChild(grid); - const item = document.createElement("div"); - item.className = "item"; - grid.appendChild(item); - test(function() { - const colSize = clamp(percentage * maxContent / 100, minContent, maxContent); - const height = colSize < maxContent ? maxContent : minContent; - assert_equals(item.offsetWidth, colSize, "Grid item width"); - assert_equals(item.offsetHeight, height, "Grid item height"); - assert_equals(grid.offsetWidth, maxContent, "Grid container width"); - assert_equals(grid.offsetHeight, height, "Grid container height"); - assert_equals(getComputedStyle(grid).gridTemplateColumns, colSize + "px", - "Grid column size"); - }, value); +for (const use_min_width of [false, true]) { + for (const use_calc of [false, true]) { + for (const percentage of [0, 50, 75, 100, 150]) { + const value = use_calc ? `fit-content(calc(0px + ${percentage}%))` + : `fit-content(${percentage}%)`; + const container = document.createElement("div"); + container.className = "container"; + document.body.appendChild(container); + const grid = document.createElement("div"); + grid.className = "grid"; + grid.style.gridTemplateColumns = value; + container.appendChild(grid); + const item = document.createElement("div"); + item.className = "item"; + item.style.minWidth = use_min_width ? "auto" : "0px"; + grid.appendChild(item); + test(function() { + const minWidth = use_min_width ? minContent : 0; + const colSize = clamp(percentage * maxContent / 100, minWidth, maxContent); + const height = colSize < maxContent ? maxContent : minContent; + assert_equals(item.offsetWidth, colSize, "Grid item width"); + assert_equals(item.offsetHeight, height, "Grid item height"); + assert_equals(grid.offsetWidth, maxContent, "Grid container width"); + assert_equals(grid.offsetHeight, height, "Grid container height"); + assert_equals(getComputedStyle(grid).gridTemplateColumns, colSize + "px", + "Grid column size"); + }, value + "; min-width: " + item.style.minWidth); + } } } </script> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-001.html b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-001.html new file mode 100644 index 00000000000..9c25c42a1de --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-001.html @@ -0,0 +1,12 @@ +<!DOCTYPE html> +<title>Border/padding on the trim-establishing container itself isn't considered to be "intervening"</title> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; margin-top:30px; width:100px; height:40px; background:green;"></div> +<div style="text-box-trim:trim-both; border:10px solid green; width:80px; font:20px/60px Ahem; color:green; background:red;"> + xxxx<br> + xxxx<br> +</div> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-002.html b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-002.html new file mode 100644 index 00000000000..59a071771ae --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-002.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<title>Border/padding on the trim-establishing container itself isn't considered to be "intervening"</title> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; margin-top:30px; width:100px; height:40px; background:green;"></div> +<div style="text-box-trim:trim-both; width:100px; font:20px/60px Ahem; color:green; background:red;"> + <div style="text-box-trim:trim-both; border:10px solid green;"> + xxxx<br> + xxxx<br> + </div> +</div> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-003.html b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-003.html new file mode 100644 index 00000000000..a114612906d --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-003.html @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<title>Border/padding on the trim-establishing container itself isn't considered to be "intervening"</title> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; margin-top:35px; width:100px; height:20px; background:green;"></div> +<div style="position:absolute; margin-top:75px; width:100px; height:10px; background:green;"></div> +<div style="text-box-trim:trim-both; width:100px; font:20px/40px Ahem; color:green; background:red;"> + <div style="text-box-trim:trim-start; border:10px solid green; border-block-width:15px;"> + xxxx<br> + xxxx<br> + </div> +</div> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-004.html b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-004.html new file mode 100644 index 00000000000..dc9513b54df --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/border-padding-004.html @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<title>Border/padding on the trim-establishing container itself isn't considered to be "intervening"</title> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; margin-top:15px; width:100px; height:10px; background:green;"></div> +<div style="position:absolute; margin-top:45px; width:100px; height:20px; background:green;"></div> +<div style="text-box-trim:trim-both; width:100px; font:20px/40px Ahem; color:green; background:red;"> + <div style="text-box-trim:trim-end; border:10px solid green; border-block-width:15px;"> + xxxx<br> + xxxx<br> + </div> +</div> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-001.html b/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-001.html new file mode 100644 index 00000000000..b81eb775d64 --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-001.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; width:100px; text-box-trim:trim-both; font:20px/80px Ahem; color:green; background:red;"> + xxxxx<br> + xxxxx<br> +</div> +<div style="position:absolute; margin-top:20px; width:100px; height:60px; background:green;"></div> diff --git a/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-002.html b/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-002.html new file mode 100644 index 00000000000..6bcd38cd686 --- /dev/null +++ b/tests/wpt/tests/css/css-inline/text-box-trim/out-of-flow-002.html @@ -0,0 +1,13 @@ +<!DOCTYPE html> +<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org"> +<link rel="help" href="https://drafts.csswg.org/css-inline-3/#text-box-trim"> +<link rel="match" href="../../reference/ref-filled-green-100px-square.xht"> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css"> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="position:absolute; width:100px; text-box-trim:trim-both; font:20px/80px Ahem; color:green; background:red;"> + <div style="float:left; width:20px; height:20px; margin-top:30px; background:green;"></div> + xxxx<br> + xxxx<br> + <div style="float:right; width:20px; height:20px; margin-top:-20px; background:green;"></div> +</div> +<div style="position:absolute; margin-top:20px; width:100px; height:60px; background:green;"></div> diff --git a/tests/wpt/tests/css/css-lists/container-list-items-crash.html b/tests/wpt/tests/css/css-lists/container-list-items-crash.html new file mode 100644 index 00000000000..dcb4273accc --- /dev/null +++ b/tests/wpt/tests/css/css-lists/container-list-items-crash.html @@ -0,0 +1,21 @@ +<!DOCTYPE html> +<link rel="help" href="http://crbug.com/374683348"> +<style> + #container { + container-type: inline-size; + width: 500px; + position: absolute; + } +</style> +<ol> + <div id="container"> + <li id="item"></li> + </div> + <li></li> +</ol> +<script> + container.offsetTop; + item.style = "counter-reset: list-item 1"; + container.style.width = "300px"; + container.offsetTop; +</script> diff --git a/tests/wpt/tests/css/css-lists/style-containment-counter-crash.html b/tests/wpt/tests/css/css-lists/style-containment-counter-crash.html new file mode 100644 index 00000000000..c9d642bd383 --- /dev/null +++ b/tests/wpt/tests/css/css-lists/style-containment-counter-crash.html @@ -0,0 +1,12 @@ +<!DOCTYPE html> +<link rel="help" href="http://crbug.com/374064162"> +<style> + #test::before { + content: counters(counter0, ''); + } +</style> +<div style="contain:style;"> + <div style="counter-set:counter0;"></div> +</div> +<div id="test" style="contain:style;"></div> + diff --git a/tests/wpt/tests/css/css-logical/WEB_FEATURES.yml b/tests/wpt/tests/css/css-logical/WEB_FEATURES.yml new file mode 100644 index 00000000000..76b76d0572b --- /dev/null +++ b/tests/wpt/tests/css/css-logical/WEB_FEATURES.yml @@ -0,0 +1,3 @@ +features: +- name: logical-properties + files: "**" diff --git a/tests/wpt/tests/css/css-nesting/top-level-parent-pseudo-specificity.html b/tests/wpt/tests/css/css-nesting/top-level-parent-pseudo-specificity.html new file mode 100644 index 00000000000..40ac2459831 --- /dev/null +++ b/tests/wpt/tests/css/css-nesting/top-level-parent-pseudo-specificity.html @@ -0,0 +1,19 @@ +<!DOCTYPE html> +<title>CSS Nesting: Specificity of top-level '&'</title> +<link rel="help" href="https://drafts.csswg.org/css-nesting-1"> +<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10196"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<style> + /* Note: at the top level, '&' matches like ':root'. */ + + /* Should have zero specificity: */ + & { color: red; } + /* Should also have zero specificity: */ + :where(&) { color: green; } +</style> +<script> + test(() => { + assert_equals(getComputedStyle(document.documentElement).color, 'rgb(0, 128, 0)'); + }); +</script> diff --git a/tests/wpt/tests/css/css-properties-values-api/WEB_FEATURES.yml b/tests/wpt/tests/css/css-properties-values-api/WEB_FEATURES.yml new file mode 100644 index 00000000000..25d7b8fde4d --- /dev/null +++ b/tests/wpt/tests/css/css-properties-values-api/WEB_FEATURES.yml @@ -0,0 +1,3 @@ +features: +- name: registered-custom-properties + files: "**" diff --git a/tests/wpt/tests/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html b/tests/wpt/tests/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html new file mode 100644 index 00000000000..b71bfe23634 --- /dev/null +++ b/tests/wpt/tests/css/css-pseudo/parsing/the-select-arrow-pseudo-element.tentative.html @@ -0,0 +1,32 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS ::select-arrow Pseudo-Element Test</title> +<link rel="help" href="https://github.com/w3c/csswg-drafts/pull/10986"> +<meta name="assert" content="This test checks the validity of the ::select-arrow pseudo element selector." /> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/css/support/parsing-testcommon.js"></script> +<script> +test_valid_selector("::select-arrow"); +test_valid_selector("*::select-arrow", "::select-arrow"); +test_valid_selector("foo.bar[baz]::select-arrow"); +test_invalid_selector("::select-arrow *"); + +// Combinations +test_invalid_selector("::select-arrow::select-arrow"); + +test_invalid_selector("::before::select-arrow"); +test_invalid_selector("::after::select-arrow"); +test_invalid_selector("::marker::select-arrow"); +test_invalid_selector("::placeholder::select-arrow"); + +test_invalid_selector("::select-arrow::before"); +test_invalid_selector("::select-arrow::after"); +test_valid_selector("::select-arrow::marker"); +test_invalid_selector("::select-arrow::placeholder"); + +test_invalid_selector("::slotted(*)::select-arrow::slotted(*)"); +test_valid_selector("::slotted(*)::select-arrow"); + +test_valid_selector("::part(foo)::select-arrow"); +</script> diff --git a/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-005-crash.html b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-005-crash.html new file mode 100644 index 00000000000..9e4f002cfec --- /dev/null +++ b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-005-crash.html @@ -0,0 +1,15 @@ +<!doctype html> +<div id="host"> + <template shadowrootmode="open"> + <slot></slot> + <slot></slot> + </template> + <div id="child1">Child1</div> + <div id="child2" slot="named-slot">Child2</div> +</div> +<script> + host.getBoundingClientRect(); + host.shadowRoot.querySelectorAll("slot")[1].name = "named-slot"; + host.style.display = "flex"; + host.getBoundingClientRect(); +</script> diff --git a/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006-ref.html b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006-ref.html new file mode 100644 index 00000000000..60a6282457f --- /dev/null +++ b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006-ref.html @@ -0,0 +1,6 @@ +<!doctype html> +<title>CSS Test Reference</title> +<div id="host"> + <div>Child1</div> + <div>Child2</div> +</div> diff --git a/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006.html b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006.html new file mode 100644 index 00000000000..ace701eea93 --- /dev/null +++ b/tests/wpt/tests/css/css-scoping/shadow-reassign-dynamic-006.html @@ -0,0 +1,20 @@ +<!doctype html> +<meta charset="utf-8"> +<title>CSS Scoping: Dynamic reassignment of a named slot child.</title> +<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io"> +<link rel="help" href="https://drafts.csswg.org/css-scoping/#selectors-data-model"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1927714"> +<link rel="match" href="shadow-reassign-dynamic-006-ref.html"> +<div id="host"> + <template shadowrootmode="open"> + <slot></slot> + <slot></slot> + </template> + <div id="child1">Child1</div> + <div id="child2" slot="named-slot">Child2</div> +</div> +<script> + host.getBoundingClientRect(); + host.shadowRoot.querySelectorAll("slot")[1].name = "named-slot"; + host.getBoundingClientRect(); +</script> diff --git a/tests/wpt/tests/css/css-scroll-snap/unrelated-gesture-scroll-during-snap.html b/tests/wpt/tests/css/css-scroll-snap/unrelated-gesture-scroll-during-snap.html new file mode 100644 index 00000000000..0390bdad257 --- /dev/null +++ b/tests/wpt/tests/css/css-scroll-snap/unrelated-gesture-scroll-during-snap.html @@ -0,0 +1,131 @@ +<!DOCTYPE html> +<html> + <head> + <link rel="help" href="https://drafts.csswg.org/css-scroll-snap-1" /> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script src="/resources/testdriver.js"></script> + <script src="/resources/testdriver-actions.js"></script> + <script src="/resources/testdriver-vendor.js"></script> + <script src="/dom/events/scrolling/scroll_support.js"></script> + <script src="support/common.js"></script> + </head> + <body> + <style> + .scroller { + border: solid 1px black; + overflow-y: scroll; + height: 200px; + width: 200px; + display: inline-block; + background-color: yellow; + position: relative; + } + .snapcontainer { + scroll-snap-type: y mandatory; + } + .snaparea { + scroll-snap-align: start; + margin-bottom: 120%; + height: 40px; + width: 50px; + background-color: green; + } + .space { + height: 500vh; + width: 500vw; + position: absolute; + } + </style> + <div> + <div id="plaincontainer" class="scroller"> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + </div> + <div id="snapcontainer1" class="scroller snapcontainer"> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + </div> + <div id="snapcontainer2" class="scroller snapcontainer"> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + <div class="snaparea"></div> + </div> + </div> + <script> + const plaincontainer = document.getElementById("plaincontainer"); + const snapcontainer1 = document.getElementById("snapcontainer1"); + const snapcontainer2 = document.getElementById("snapcontainer2"); + + async function test_unrelated_gesture_during_snap(t, + snapcontainer, + other_container, + inputs, + expectations) { + await waitForScrollReset(t, snapcontainer); + await waitForScrollReset(t, other_container); + await waitForCompositorCommit(); + + assert_equals(snapcontainer.scrollTop, 0, "snapcontainer is reset."); + assert_equals(other_container.scrollTop, 0, `${other_container.id} is ` + + `reset.`); + const scrollend_promises = [ + waitForScrollendEventNoTimeout(snapcontainer), + waitForScrollendEventNoTimeout(other_container) + ]; + let last_scroll_top = snapcontainer.scrollTop; + async function scroll_listener() { + // If we are scrolling back to 0, we are snapping. + if (snapcontainer.scrollTop < last_scroll_top) { + snapcontainer.removeEventListener("scroll", scroll_listener); + await new test_driver.Actions().scroll(0, 0, 0, inputs.scroll_amt, + { origin: other_container }).send(); + } + last_scroll_top = snapcontainer.scrollTop; + } + snapcontainer.addEventListener("scroll", scroll_listener); + + // The snap areas are separated by margin-bottom: 120%. Scrolling to + // almost halfway should snap back to 0. + const snap_scroll_amt = snapcontainer.clientHeight / 2; + await new test_driver.Actions().scroll(0, 0, 0, snap_scroll_amt, + { origin: snapcontainer }) + .send(); + + await Promise.all(scrollend_promises); + assert_equals(snapcontainer.scrollTop, 0, + "snapcontainer snaps back to 0"); + assert_equals(other_container.scrollTop, expectations.expectedScrollTop, + `${other_container.id} is at expected scroll offset.`); + } + + promise_test(async (t) => { + await test_unrelated_gesture_during_snap(t, snapcontainer1, + plaincontainer, + { scroll_amt: 100 }, + { expectedScrollTop: 100 }); + }, "gesture on separate scroll container works while another container "+ + "snaps"); + + promise_test(async (t) => { + // scrolling the full clientHeight of snapcontainer2 should result in + // snapping to its second snap area. + const scroll_amt = snapcontainer2.clientHeight; + const expectedScrollTop = snapcontainer2.querySelectorAll(".snaparea")[1].offsetTop; + await test_unrelated_gesture_during_snap(t, snapcontainer1, + snapcontainer2, + { scroll_amt: scroll_amt }, + { expectedScrollTop: expectedScrollTop}); + }, "gesture on separate snap container works while another container "+ + "snaps"); + </script> + </body> +</html> diff --git a/tests/wpt/tests/css/css-sizing/replaced-fractional-height-from-aspect-ratio.html b/tests/wpt/tests/css/css-sizing/replaced-fractional-height-from-aspect-ratio.html index d97c3f133eb..0aece7f95ac 100644 --- a/tests/wpt/tests/css/css-sizing/replaced-fractional-height-from-aspect-ratio.html +++ b/tests/wpt/tests/css/css-sizing/replaced-fractional-height-from-aspect-ratio.html @@ -1,7 +1,9 @@ <!DOCTYPE html> <link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1052370" > <meta name="assert" content="When determining the size of a replaced element, if it has an aspect ratio of 1/1 then the final height should be exactly equal to its width." /> -<script src="../../resources/check-layout.js"></script> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/resources/check-layout-th.js"></script> <style> canvas { float: left; diff --git a/tests/wpt/tests/css/css-sizing/stretch/auto-margins-1.html b/tests/wpt/tests/css/css-sizing/stretch/auto-margins-1.html new file mode 100644 index 00000000000..658c3e30d71 --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/auto-margins-1.html @@ -0,0 +1,21 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="auto margins are treated as 0 in basic horizontal centering cases"> + +<body onload="checkLayout('[data-expected-width]')"> + + <div style="width: 100px; position: relative; border: solid"> + <div style="margin: 0 auto; width: stretch; background: lime;" + data-expected-width="100" data-offset-x="0">lorem</div> + </div> + + <div style="width: 100px; position: relative; border: solid"> + <div + style="margin: 0 auto; min-width: stretch; width: 25px; background: lime;" + data-expected-width="100" data-offset-x="0">lorem</div> + </div> diff --git a/tests/wpt/tests/css/css-sizing/stretch/auto-margins-2.html b/tests/wpt/tests/css/css-sizing/stretch/auto-margins-2.html new file mode 100644 index 00000000000..fcd2f12dfae --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/auto-margins-2.html @@ -0,0 +1,56 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="auto margins are treated as 0 in stretched abspos boxes"> + +<style> + .outer { + width: 200px; + height: 200px; + position: relative; + border: solid; + } + + .outer>div { + position: absolute; + margin: auto; + background: lime; + } +</style> + +<body onload="checkLayout('.outer>div')"> + + <div class="outer"> + <div style="inset: 0; width: stretch; height: 100px;" + data-expected-width="200" data-offset-x="0"></div> + </div> + + <div class="outer"> + <div style="inset: 0; max-width: stretch; height: 100px;" + data-expected-width="200" data-offset-x="0"></div> + </div> + + <div class="outer"> + <div style="inset: 0; height: stretch; width: 100px;" + data-expected-height="200" data-offset-y="0"></div> + </div> + + <div class="outer"> + <div style="inset: 0; max-height: stretch; width: 100px;" + data-expected-height="200" data-offset-y="0"></div> + </div> + + <div class="outer"> + <div style="top: 0; bottom: 0; left: 25px; right: 25px; width: stretch;" + data-expected-width="150" data-offset-x="25"></div> + </div> + + <div class="outer"> + <div + style="top: 25px; bottom: 25px; left: 0px; right: 0px; height: stretch;" + data-expected-height="150" data-offset-y="25"></div> + </div> diff --git a/tests/wpt/tests/css/css-sizing/stretch/indefinite-1.html b/tests/wpt/tests/css/css-sizing/stretch/indefinite-1.html new file mode 100644 index 00000000000..e69689c939f --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/indefinite-1.html @@ -0,0 +1,20 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/11006"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="with indefinite available space, a preferred size property value of stretch behaves as auto"> + +<body + onload="checkLayout('[data-expected-client-height]')"> + + <div style="block-size: stretch; inline-size: 100px; border: solid" + data-expected-client-height="0"></div> + + <div style="block-size: stretch; inline-size: 100px; border: solid" + data-expected-client-height="20"> + <div style="height: 20px;"></div> + </div> diff --git a/tests/wpt/tests/css/css-sizing/stretch/indefinite-2.html b/tests/wpt/tests/css/css-sizing/stretch/indefinite-2.html new file mode 100644 index 00000000000..e8df12ccaa3 --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/indefinite-2.html @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/11006"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="with indefinite available space, min-height:stretch resolves to 0"> + +<body + onload="checkLayout('[data-expected-client-height]')"> + + <div style="min-height: stretch; height: 0; width: 200px; border: solid" + data-expected-client-height="0">lorem ipsum</div> diff --git a/tests/wpt/tests/css/css-sizing/stretch/indefinite-3.html b/tests/wpt/tests/css/css-sizing/stretch/indefinite-3.html new file mode 100644 index 00000000000..67fbd50d4f7 --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/indefinite-3.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/11006"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="with indefinite available space, max-height: stretch resolves to infinity"> + +<body + onload="checkLayout('[data-expected-client-height]')"> + + <div style="max-height: stretch; height: 4000px; width: 200px; border: solid;" + data-expected-client-height="4000"> + lorem ipsum</div> diff --git a/tests/wpt/tests/css/css-sizing/stretch/indefinite-4.html b/tests/wpt/tests/css/css-sizing/stretch/indefinite-4.html new file mode 100644 index 00000000000..e08af30f6e4 --- /dev/null +++ b/tests/wpt/tests/css/css-sizing/stretch/indefinite-4.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<link rel="help" + href="https://drafts.csswg.org/css-sizing-4/#stretch-fit-sizing"> +<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/11006"> +<script src='/resources/testharness.js'></script> +<script src='/resources/testharnessreport.js'></script> +<script src="/resources/check-layout-th.js"></script> +<meta name="assert" + content="with indefinite available space, flex-item's min-height:stretch in the main axis resolves as 0, and does not invoke automatic minimum sizing"> + +<body + onload="checkLayout('[data-expected-client-height]')"> + + <p>If indefinite <code>min-height: stretch</code> behaves as automatic size + then black border will encompass lorem ipsum due to flex automatic minimum + sizing.</p> + + <p>If indefinite <code>min-height: stretch</code> behaves as 0px + then black border will not encompass lorem ipsum.</p> + + <div + style="display: flex; flex-direction: column; border: solid cyan; min-height: 100px; width: 200px;"> + <div style="min-height: stretch; flex-basis: 0; border: solid" + data-expected-client-height="0">lorem ipsum + </div> + </div> diff --git a/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent-ref.html b/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent-ref.html new file mode 100644 index 00000000000..cb4d0f57b08 --- /dev/null +++ b/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent-ref.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<head> +<meta charset="utf-8"> +<link rel="author" title="Vitor Roriz" href="https://github.com/vitorroriz"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#text-shadow-property"> +<style> +.test { + font-size: 100px; + text-shadow: 300px 300px 0 green; +} +.hide-text { + background-color: white; + position: absolute; + width: 300px; + height: 200px; + z-index: 1; + left: 0; +} +</style> +</head> +<body> + <span class="test">A👍B</span> + <span class="hide-text"></span> +</body> diff --git a/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html b/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html new file mode 100644 index 00000000000..8ea04ab5933 --- /dev/null +++ b/tests/wpt/tests/css/css-text-decor/text-shadow/text-shadow-emoji-transparent.html @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<head> +<meta charset="utf-8"> +<link rel="author" title="Vitor Roriz" href="https://github.com/vitorroriz"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#text-shadow-property"> +<link rel="match" href="text-shadow-emoji-transparent-ref.html"> +<style> +.test { + font-size: 100px; + text-shadow: 300px 300px 0 green; + color: transparent +} +</style> +</head> +<body> + <span class="test">A👍B</span> +</body> diff --git a/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1-ref.html b/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1-ref.html new file mode 100644 index 00000000000..bd348fa5099 --- /dev/null +++ b/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1-ref.html @@ -0,0 +1,12 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS Reftest Reference: Segment Break Transformation Rules</title> +<div>Pass if the two lines match, with no spaces between the characters:</div> +<div lang="zh" style="font: 24px serif"> +<p> + 社︀福︀葛󠄀禰󠄀葛葛葛葛 +</p> +<p> + 社︀福︀葛󠄀禰󠄀葛葛葛葛 +</p> +</div> diff --git a/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html b/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html new file mode 100644 index 00000000000..a62d4b396a8 --- /dev/null +++ b/tests/wpt/tests/css/css-text/line-breaking/segment-break-transformation-ignorable-1.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS Reftest Test: Segment Break Transformation Rules</title> +<link rel="author" title="Jonathan Kew" href="mailto:jkew@mozilla.com"> +<link rel="help" href="https://drafts.csswg.org/css-text-3/#line-break-transform"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1927458"> +<meta name="assert" content="default-ignorable characters should not interfere with segment break transformation"> +<link rel="match" href="segment-break-transformation-ignorable-1-ref.html"> +<div>Pass if the two lines match, with no spaces between the characters:</div> +<div lang="zh" style="font: 24px serif"> +<p> + 社︀ + 福︀ + 葛󠄀 + 禰󠄀 + 葛­ + 葛‎ + 葛 + ‎葛 +</p> +<p> + 社︀福︀葛󠄀禰󠄀葛葛葛葛 +</p> +</div> diff --git a/tests/wpt/tests/css/css-transitions/properties-value-001.html b/tests/wpt/tests/css/css-transitions/properties-value-001.html index 54e84be2b09..314ae42a5b0 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-001.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-001.html @@ -89,6 +89,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-002.html b/tests/wpt/tests/css/css-transitions/properties-value-002.html index ed85b007d2c..14c8f907dfb 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-002.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-002.html @@ -91,6 +91,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-003.html b/tests/wpt/tests/css/css-transitions/properties-value-003.html index faf0258a60b..d90aea54c31 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-003.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-003.html @@ -93,6 +93,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-implicit-001.html b/tests/wpt/tests/css/css-transitions/properties-value-implicit-001.html index 8500436c529..d49505ef126 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-implicit-001.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-implicit-001.html @@ -98,6 +98,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started. + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-inherit-001.html b/tests/wpt/tests/css/css-transitions/properties-value-inherit-001.html index abbdecdfae9..8088ddfad1a 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-inherit-001.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-inherit-001.html @@ -99,6 +99,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-inherit-002.html b/tests/wpt/tests/css/css-transitions/properties-value-inherit-002.html index 9556cf7e23a..01990561438 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-inherit-002.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-inherit-002.html @@ -100,6 +100,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/properties-value-inherit-003.html b/tests/wpt/tests/css/css-transitions/properties-value-inherit-003.html index 13a16132134..60f498c53f6 100644 --- a/tests/wpt/tests/css/css-transitions/properties-value-inherit-003.html +++ b/tests/wpt/tests/css/css-transitions/properties-value-inherit-003.html @@ -99,6 +99,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // invoked after transitions have started + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible @@ -128,7 +130,7 @@ // test TransitionEnd events 'events': { done: function(test, data, options) { - // make sure there were no events on parent + // font-size explicitly transitioned on the parent. test.step(generalParallelTest.assertExpectedEventsFunc(data, 'container', "font-size:" + duration)); // make sure we got the event for the tested property only test.step(generalParallelTest.assertExpectedEventsFunc(data, 'transition', "")); diff --git a/tests/wpt/tests/css/css-transitions/pseudo-elements-001.html b/tests/wpt/tests/css/css-transitions/pseudo-elements-001.html index 146c533e235..5fb8fb6c070 100644 --- a/tests/wpt/tests/css/css-transitions/pseudo-elements-001.html +++ b/tests/wpt/tests/css/css-transitions/pseudo-elements-001.html @@ -113,6 +113,8 @@ teardown: generalParallelTest.teardown, // invoked prior to running a slice of tests sliceStart: generalParallelTest.sliceStart, + // Invoked after transitions have started. + transitionsStarted: generalParallelTest.transitionsStarted, // invoked after running a slice of tests sliceDone: generalParallelTest.sliceDone, // test cases, make them as granular as possible diff --git a/tests/wpt/tests/css/css-transitions/support/generalParallelTest.js b/tests/wpt/tests/css/css-transitions/support/generalParallelTest.js index f6e14128fc0..f8ad77ecde5 100644 --- a/tests/wpt/tests/css/css-transitions/support/generalParallelTest.js +++ b/tests/wpt/tests/css/css-transitions/support/generalParallelTest.js @@ -1,6 +1,6 @@ (function(root) { 'use strict'; -// + var index = 0; var suite = root.generalParallelTest = { // prepare individual test @@ -71,6 +71,8 @@ var suite = root.generalParallelTest = { sliceStart: function(options, tests) { // inject styles into document setStyle(options.styles); + }, + transitionsStarted: function(options, tests) { // kick off value collection loop generalParallelTest.startValueCollection(options); }, @@ -154,20 +156,40 @@ var suite = root.generalParallelTest = { }, // requestAnimationFrame runLoop to collect computed values startValueCollection: function(options) { - var raf = window.requestAnimationFrame || function(callback){ - setTimeout(callback, 20); - }; - - // flag denoting if the runLoop should continue (true) or exit (false) - options._collectValues = true; - - function runLoop() { - if (!options._collectValues) { - // test's are done, stop annoying the CPU - return; - } + const promises = []; + const animations = document.getAnimations(); + animations.forEach(a => { + promises.push(new Promise(resolve => { + const listener = (event) => { + let found = false; + if (event.pseudoElement != '') { + if (event.pseudoElement == a.effect.pseudoElement) { + found = true; + } + } else if (!a.effect.pseudoElement) { + found = true; + } + if (found) { + a.effect.target.removeEventListener( + 'transitionend', listener); + resolve(); + } + }; + a.effect.target.addEventListener('transitionend', listener); + })); + }); + Promise.all(promises).then(() => { + options.allTransitionsCompleted(); + }); - // collect current style for test's elements + // Sample at these values expressed as relative progress. + // The last sample being the end of the transition ensure that the + // completion events are received in short order. + const sample_at = [0.2, 0.4, 0.6, 0.8, 1.0]; + sample_at.forEach(at => { + const time = options.duration * at; + animations.forEach(a => { a.currentTime = time; }); + // Collect current style for test's elements. options.tests.forEach(function(data) { if (!data.property) { return; @@ -187,12 +209,7 @@ var suite = root.generalParallelTest = { } }); }); - - // rinse and repeat - raf(runLoop); - } - - runLoop(); + }); }, // stop requestAnimationFrame runLoop collecting computed values stopValueCollection: function(options) { diff --git a/tests/wpt/tests/css/css-transitions/support/properties.js b/tests/wpt/tests/css/css-transitions/support/properties.js index 0c0057b39e8..81cf9d46d5f 100644 --- a/tests/wpt/tests/css/css-transitions/support/properties.js +++ b/tests/wpt/tests/css/css-transitions/support/properties.js @@ -168,7 +168,7 @@ var values = { */ var properties = { 'background-color': ['color'], - 'background-position': ['length', 'percentage'], + 'background-position-x': ['length', 'percentage'], 'border-top-width': ['length'], 'border-right-width': ['length'], diff --git a/tests/wpt/tests/css/css-transitions/support/runParallelAsyncHarness.js b/tests/wpt/tests/css/css-transitions/support/runParallelAsyncHarness.js index de9b7837900..7293bf92d06 100644 --- a/tests/wpt/tests/css/css-transitions/support/runParallelAsyncHarness.js +++ b/tests/wpt/tests/css/css-transitions/support/runParallelAsyncHarness.js @@ -56,16 +56,24 @@ done: function(options){} }) */ -root.runParallelAsyncHarness = function(options) { + +function DomContentLoadedPromise() { + return new Promise(resolve => { + document.addEventListener("DOMContentLoaded", (event) => { + resolve(); + }); + }); +} + +root.runParallelAsyncHarness = async function(options) { + const ready = DomContentLoadedPromise(); + if (!options.cases) { throw new Error("Options don't contain test cases!"); } var noop = function(){}; - // add a 100ms buffer to the test timeout, just in case - var duration = Math.ceil(options.duration + 100); - // names of individual tests var cases = Object.keys(options.cases); @@ -98,7 +106,6 @@ root.runParallelAsyncHarness = function(options) { var tests = options.tests.slice(offset, offset + testPerSlice); tests.forEach(function(data) { (options.setup || noop)(data, options); - }); // kick off the current slice of tests @@ -113,6 +120,9 @@ root.runParallelAsyncHarness = function(options) { }); }); + // Start sampling. + (options.transitionsStarted || noop)(options, tests); + // conclude slice (possibly abort) var concludeSlice = function() { tests.forEach(function(data) { @@ -133,16 +143,14 @@ root.runParallelAsyncHarness = function(options) { // finish the test for current slice of tests (options.sliceDone || noop)(options, tests); - // next test please, give the browser 50ms to do catch its breath - setTimeout(runLoop, 50); + requestAnimationFrame(runLoop); } - // wait on RAF before cleanup to make sure all queued event handlers have run - setTimeout(function() {requestAnimationFrame(concludeSlice)},duration); + options.allTransitionsCompleted = concludeSlice; } // allow DOMContentLoaded before actually doing something - setTimeout(runLoop, 100); + ready.then(runLoop); }; })(window); diff --git a/tests/wpt/tests/css/css-values/attr-IACVT.html b/tests/wpt/tests/css/css-values/attr-IACVT.html new file mode 100644 index 00000000000..22c5b4e84ab --- /dev/null +++ b/tests/wpt/tests/css/css-values/attr-IACVT.html @@ -0,0 +1,28 @@ +<!DOCTYPE html> +<title>CSS Values Test: attr() IACVT</title> +<meta name="assert" content="Fail to substitute attr() should be IACVT."> +<link rel="help" href="https://drafts.csswg.org/css-values-5/#attr-notation"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<style> + #expected { + background-color: red; + } + #test { + background-color: red; + background-color: attr(data-color <color>); + } +</style> +<div id="test" data-color=333></div> +<div id="expected"></div> + +<script> + var elem = document.getElementById("test"); + var value = window.getComputedStyle(elem).getPropertyValue("background-color"); + + var expected_elem = document.getElementById("expected"); + var expected_value = window.getComputedStyle(expected_elem).getPropertyValue("background-color"); + test(() => { + assert_not_equals(value, expected_value); + }); +</script>
\ No newline at end of file diff --git a/tests/wpt/tests/css/css-values/attr-all-types.html b/tests/wpt/tests/css/css-values/attr-all-types.html index 1e1f7d015cc..c48e476b6d9 100644 --- a/tests/wpt/tests/css/css-values/attr-all-types.html +++ b/tests/wpt/tests/css/css-values/attr-all-types.html @@ -22,20 +22,6 @@ <div id="expected"></div> <script> - const dimensionTypeToUnits = { - "length": ["em", "ex", "cap", "ch", "ic", "rem", "lh", "rlh", "vw", "vh ", "vi", "vb", "vmin", "vmax"], - "angle": ["deg", "grad", "rad", "turn"], - "time": ["ms", "ms"], - "frequency": ["Hz", "kHz"], - "flex": ["fr"] - }; - const dimensionTypeToProperty = { - "length": ["width"], - "angle": ["font-style"], - "time": ["transition-duration"], - "flex": ["grid-template-columns"] - } - function test_valid_attr(property, attrString, attrValue, expectedValue) { var elem = document.getElementById("attr"); elem.setAttribute("data-foo", attrValue); @@ -70,112 +56,91 @@ elem.style.setProperty(property, null); } - function test_dimension_types_and_units() { - for(const [type, units] of Object.entries(dimensionTypeToUnits)) { - const property = dimensionTypeToProperty[type]; - const val = "3"; - units.forEach(unit => { - const expectedValue = val + unit; - - const dimensionTypeAttrString = 'attr(data-foo ' + type + ')'; - test_valid_attr(property, dimensionTypeAttrString, expectedValue, expectedValue); - - const dimensionUnitAttrString = 'attr(data-foo ' + unit + ')'; - test_valid_attr(property, dimensionUnitAttrString, val, expectedValue); - }); - } - } - test_valid_attr('content', 'attr(data-foo)', 'abc', '"abc"'); test_valid_attr('content', 'attr(data-foo,)', 'abc', '"abc"'); - test_valid_attr('content', 'attr(data-foo string)', 'abc', '"abc"'); - test_valid_attr('content', 'attr(data-foo string,)', 'abc', '"abc"'); - test_valid_attr('content', 'attr(data-foo string)', 'attr(data-foo)', '"attr(data-foo)"'); - - test_valid_attr('animation-name', 'attr(data-foo ident)', 'anim', 'anim'); - test_valid_attr('animation-name', 'attr(data-foo ident, anim-fallback)', '"anim"', 'anim-fallback'); - test_valid_attr('animation-name', 'attr(data-foo ident, anim-fallback)', 'initial', 'anim-fallback'); - - test_valid_attr('background-color', 'attr(data-foo color)', 'red', 'red'); - test_valid_attr('background-color', 'attr(data-foo color)', '#ff0099aa', '#ff0099aa'); - test_valid_attr('background-color', 'attr(data-foo color, red)', '10', 'red'); - test_valid_attr('background-color', 'attr(data-foo color, green)', '1000px', 'green'); - test_valid_attr('background-color', 'attr(data-foo color, green)', 'rgb(255, 0, 0)', 'green'); - - test_valid_attr('font-weight', 'attr(data-foo number)', '10', '10'); - test_valid_attr('font-weight', 'attr(data-foo number, 30)', '10px', '30'); - test_valid_attr('font-weight', 'attr(data-foo number, calc(10 + 20))', '10px', '30'); - - test_valid_attr('font-size', 'attr(data-foo percentage)', '10%', '10%'); - test_valid_attr('font-size', 'attr(data-foo percentage, 10px)', 'abc', '10px'); - test_valid_attr('--x', 'attr(data-foo percentage, abc)', '10', 'abc'); - - test_valid_attr('width', 'attr(data-foo length)', '10px', '10px'); - test_valid_attr('width', 'attr(data-foo length, red)', '10px', '10px'); - test_valid_attr('width', 'attr(data-foo length, 42px)', 'calc(1px + 3px)', '42px'); - - test_valid_attr('font-style', 'attr(data-foo angle)', '10deg', '10deg'); - test_valid_attr('font-style', 'attr(data-foo angle, 10deg)', '30', '10deg'); - test_valid_attr('font-style', 'attr(data-foo angle, italic)', '30', 'italic'); - - test_valid_attr('transition-duration', 'attr(data-foo time)', '10ms', '10ms'); - test_valid_attr('transition-duration', 'attr(data-foo time, 30s)', '10m', '30s'); - test_valid_attr('transition-duration', 'attr(data-foo time, calc(10s + 20s))', '10m', '30s'); - - test_valid_attr('grid-template-columns', '30px attr(data-foo flex)', '1fr', '30px 1fr'); - test_valid_attr('grid-template-columns', 'attr(data-foo flex, 3fr)', '1fr 1fr', '3fr'); - test_valid_attr('grid-template-columns', 'attr(data-foo flex, calc(1px + 2px))', '10px', '3px'); - - test_valid_attr('height', 'attr(data-foo px)', '10', '10px'); - test_valid_attr('width', 'calc(attr(data-foo px) + 1px)', '10', '11px'); - test_valid_attr('--x', 'attr(data-foo px) 11px', '10', '10px 11px'); - test_valid_attr('grid-template-columns', 'attr(data-foo fr)', '10', '10fr'); - test_valid_attr('grid-template-columns', 'attr(data-foo fr, 3fr)', '10fr', '3fr'); - - test_valid_attr('--string', 'attr(data-foo string)', 'hello', '"hello"'); - test_valid_attr('--string-list', 'attr(data-foo string)', 'hello', '"hello"'); - - test_dimension_types_and_units(); - - test_invalid_attr('animation-name', 'attr(data-foo ident)', 'initial'); - test_invalid_attr('animation-name', 'attr(data-foo ident)', '"anim"'); - test_invalid_attr('animation-name', 'attr(data-foo ident)', '"none"'); - - test_invalid_attr('background-color', 'attr(data-foo color)', 'rgb(0 255 0)'); - test_invalid_attr('background-color', 'attr(data-foo color)', 'color-mix(in lch, red, pink)'); - test_invalid_attr('background-color', 'attr(data-foo color)', 'light-dark(#333b3c, #efefec)'); - test_invalid_attr('background-color', 'attr(data-foo red)', 'abc'); - test_invalid_attr('background-color', 'attr(data-foo, red)', 'abc'); - - test_invalid_attr('font-size', 'attr(data-foo number)', '10'); - test_invalid_attr('font-weight', 'attr(data-foo number),', '10'); - test_invalid_attr('font-weight', 'attr(data-foo number)', 'calc(1 + 3)'); - - test_invalid_attr('font-size', 'attr(data-foo percentage)', 'abc'); - test_invalid_attr('font-size', 'attr(data-foo percentage)', '10% a'); - test_invalid_attr('font-size', 'attr(data-foo percentage, 10rad)', 'abc'); - - test_invalid_attr('width', 'attr(data-foo length)', '10'); - test_invalid_attr('width', 'attr(data-foo length, 30)', 'calc(10 + 20)'); - test_invalid_attr('width', 'attr(data-foo length, calc(10 + 20))', 'abc'); - - test_invalid_attr('font-style', 'attr(data-foo angle)', '10%'); - test_invalid_attr('font-style', 'attr(data-foo angle)', 'calc(10px + 20px)'); - test_invalid_attr('font-style', 'attr(data-foo angle, calc(10 + 20))', 'calc(10px + 20px)'); - - test_invalid_attr('transition-duration', 'attr(data-foo time)', '10'); - test_invalid_attr('transition-duration', 'attr(data-foo time)', '10 ms'); - test_invalid_attr('transition-duration', 'attr(data-foo time)', 'calc(1ms + 2ms)s'); - - test_invalid_attr('grid-template-columns', 'attr(data-foo flex)', '10px'); - test_invalid_attr('grid-template-columns', 'attr(data-foo flex)', '"30fr"'); - test_invalid_attr('grid-template-columns', 'attr(data-foo flex, calc(1deg + 2deg))', '10px'); - - test_invalid_attr('width', 'attr(data-foo px)', '10px'); - test_invalid_attr('height', 'attr(data-foo fr)', '10'); - test_invalid_attr('transition-duration', 'attr(data-foo ms)', '10px'); - test_invalid_attr('transition-duration', 'attr(data-foo ms)', '10px foo'); + test_valid_attr('content', 'attr(data-foo <string>)', '"abc"', '"abc"'); + test_valid_attr('content', 'attr(data-foo <string>,)', '"abc"', '"abc"'); + test_valid_attr('content', 'attr(data-foo <string>)', '"attr(data-foo)"', '"attr(data-foo)"'); + + test_valid_attr('animation-name', 'attr(data-foo <custom-ident>)', 'anim', 'anim'); + test_valid_attr('animation-name', 'attr(data-foo <custom-ident>, anim-fallback)', '"anim"', 'anim-fallback'); + test_valid_attr('animation-name', 'attr(data-foo <custom-ident>, anim-fallback)', 'initial', 'anim-fallback'); + + test_valid_attr('background-color', 'attr(data-foo <color>)', 'red', 'red'); + test_valid_attr('background-color', 'attr(data-foo <color>)', '#ff0099aa', '#ff0099aa'); + test_valid_attr('background-color', 'attr(data-foo <color>, red)', '10', 'red'); + test_valid_attr('background-color', 'attr(data-foo <color>, green)', '1000px', 'green'); + test_valid_attr('background-color', 'attr(data-foo <color>, green)', 'rgb(255, 0, 0)', 'rgb(255, 0, 0)'); + test_valid_attr('background-color', 'attr(data-foo <color>)', 'color-mix(in lch, red, pink)', 'color-mix(in lch, red, pink)'); + test_valid_attr('background-color', 'attr(data-foo <color>)', 'light-dark(#333b3c, #efefec)', 'light-dark(#333b3c, #efefec)'); + + test_valid_attr('font-weight', 'attr(data-foo <number>)', '10', '10'); + test_valid_attr('font-weight', 'attr(data-foo <number>, 30)', '10px', '30'); + test_valid_attr('font-weight', 'attr(data-foo <number> | lighter | bold, bold)', 'lighter', 'lighter'); + test_valid_attr('font-weight', 'attr(data-foo <number> | lighter | bold, lighter)', '10px', 'lighter'); + test_valid_attr('font-weight', 'attr(data-foo <number>)', 'calc(3 + 3)', '6'); + test_valid_attr('font-weight', 'attr(data-foo <number>, calc(10 + 20))', '10px', '30'); + + test_valid_attr('font-size', 'attr(data-foo <percentage>)', '10%', '10%'); + test_valid_attr('font-size', 'attr(data-foo <percentage>, 10px)', 'abc', '10px'); + test_valid_attr('font-size', 'attr(data-foo <percentage> | <length>, 10)', '10px', '10px'); + test_valid_attr('--x', 'attr(data-foo <percentage>, abc)', '10', 'abc'); + + test_valid_attr('width', 'attr(data-foo <length>)', '10px', '10px'); + test_valid_attr('width', 'attr(data-foo <length>, red)', '10px', '10px'); + test_valid_attr('width', 'attr(data-foo <length>, 42px)', 'calc(1px + 3px)', '4px'); + + test_valid_attr('font-style', 'attr(data-foo <angle>)', '10deg', '10deg'); + test_valid_attr('font-style', 'attr(data-foo <angle>, 10deg)', '30', '10deg'); + test_valid_attr('font-style', 'attr(data-foo <angle>, italic)', '30', 'italic'); + test_valid_attr('font-style', 'attr(data-foo <angle>, 3deg)', 'italic', '3deg'); + test_valid_attr('font-style', 'attr(data-foo <angle> | italic, 3deg)', 'italic', 'italic'); + + test_valid_attr('transition-duration', 'attr(data-foo <time>)', '10ms', '10ms'); + test_valid_attr('transition-duration', 'attr(data-foo <time>, 30s)', '10m', '30s'); + test_valid_attr('transition-duration', 'attr(data-foo <time>, calc(10s + 20s))', '10m', '30s'); + + test_valid_attr('--x', 'attr(data-foo <number>) 11', '10', '10 11'); + test_valid_attr('--string', 'attr(data-foo <string>)', '"hello"', '"hello"'); + test_valid_attr('--string-list', 'attr(data-foo <string>+)', '"hello" "hi"', '"hello" "hi"'); + + test_invalid_attr('animation-name', 'attr(data-foo string)', 'abc'); + test_invalid_attr('animation-name', 'attr(data-foo < string>)', 'abc'); + test_invalid_attr('animation-name', 'attr(data-foo <string >)', 'abc'); + + test_invalid_attr('animation-name', 'attr(data-foo <custom-ident>)', 'initial'); + test_invalid_attr('animation-name', 'attr(data-foo <custom-ident>)', '"anim"'); + test_invalid_attr('animation-name', 'attr(data-foo <custom-ident>)', '"none"'); + test_invalid_attr('animation-name', 'attr(data-foo <custom-ident> <ident>)', '"none"'); + + test_invalid_attr('background-color', 'attr(data-foo <color>)', 'rgb(0)'); + test_invalid_attr('background-color', 'attr(data-foo <red>)', 'abc'); + test_invalid_attr('background-color', 'attr(data-foo <color> | <red>)', 'abc'); + test_invalid_attr('background-color', 'attr(data-foo <color> |)', 'abc'); + test_invalid_attr('background-color', 'attr(data-foo, <red>)', 'abc'); + + test_invalid_attr('font-size', 'attr(data-foo <number>)', '10'); + test_invalid_attr('font-size', 'attr(data-foo <number> !)', '10'); + test_invalid_attr('font-weight', 'attr(data-foo <number>),', '10'); + test_invalid_attr('width', 'attr(data-foo <number>, 30px)', '10'); + + test_invalid_attr('font-size', 'attr(data-foo <percentage>)', 'abc'); + test_invalid_attr('font-size', 'attr(data-foo <percentage>)', '10% a'); + test_invalid_attr('font-size', 'attr(data-foo <percentage>, 10rad)', 'abc'); + test_invalid_attr('font-size', 'attr(data-foo <number> | <length>, 30px)', '10'); + + test_invalid_attr('width', 'attr(data-foo <length>)', '10'); + test_invalid_attr('width', 'attr(data-foo <length>, 30)', 'calc(10 + 20)'); + test_invalid_attr('width', 'attr(data-foo <length>, calc(10 + 20))', 'abc'); + + test_invalid_attr('font-style', 'attr(data-foo <angle>)', '10%'); + test_invalid_attr('font-style', 'attr(data-foo <angle>)', 'calc(10px + 20px)'); + test_invalid_attr('font-style', 'attr(data-foo <angle>, calc(10 + 20))', 'calc(10px + 20px)'); + + test_invalid_attr('transition-duration', 'attr(data-foo <time>)', '10'); + test_invalid_attr('transition-duration', 'attr(data-foo <time>)', '10 ms'); + test_invalid_attr('transition-duration', 'attr(data-foo <time>)', 'calc(1ms + 2ms)s'); test_invalid_attr('width', 'attr(())', '10px'); </script>
\ No newline at end of file diff --git a/tests/wpt/tests/css/css-values/attr-color-invalid-cast.html b/tests/wpt/tests/css/css-values/attr-color-invalid-cast.html index d538eebdd99..970535b0037 100644 --- a/tests/wpt/tests/css/css-values/attr-color-invalid-cast.html +++ b/tests/wpt/tests/css/css-values/attr-color-invalid-cast.html @@ -30,7 +30,7 @@ html { background: white; overflow: hidden; } #outer { position: relative; background: red; width: 200px; height: 200px; } - #outer { background: attr(data-test color, green); } + #outer { background: attr(data-test <color>, green); } </style> diff --git a/tests/wpt/tests/css/css-values/attr-color-invalid-fallback.html b/tests/wpt/tests/css/css-values/attr-color-invalid-fallback.html deleted file mode 100644 index 9e016d1630d..00000000000 --- a/tests/wpt/tests/css/css-values/attr-color-invalid-fallback.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (colors) - </title> - <meta name="assert" content=" - When the fallback value of an attr() function is invalid, the delcaration is ignored. - " /> - <meta name="flags" content="invalid"> - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; width: 200px; height: 200px; } - - #outer { background: attr(data-test color, qqffuutt); } - - </style> - -</head> -<body> - - <div id="outer" data-test="red"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-color-valid.html b/tests/wpt/tests/css/css-values/attr-color-valid.html index 8817e6b94c8..5a4608989c9 100644 --- a/tests/wpt/tests/css/css-values/attr-color-valid.html +++ b/tests/wpt/tests/css/css-values/attr-color-valid.html @@ -30,7 +30,7 @@ html { background: white; overflow: hidden; } #outer { position: relative; background: red; width: 200px; height: 200px; } - #outer { background: attr(data-test color); } + #outer { background: attr(data-test <color>); } </style> diff --git a/tests/wpt/tests/css/css-values/attr-container-style-query.html b/tests/wpt/tests/css/css-values/attr-container-style-query.html index 2cc872509c0..9afa95f81ef 100644 --- a/tests/wpt/tests/css/css-values/attr-container-style-query.html +++ b/tests/wpt/tests/css/css-values/attr-container-style-query.html @@ -7,7 +7,7 @@ #container { --foo: bar; } - @container style(--foo: attr(data-foo ident)) { + @container style(--foo: attr(data-foo <custom-ident>)) { #target { color: green; } } </style> diff --git a/tests/wpt/tests/css/css-values/attr-crash.html b/tests/wpt/tests/css/css-values/attr-crash.html index 012dad91cf8..8ca828faab4 100644 --- a/tests/wpt/tests/css/css-values/attr-crash.html +++ b/tests/wpt/tests/css/css-values/attr-crash.html @@ -5,7 +5,7 @@ <head> <style> #div { - --prop: attr(data-foo ident); + --prop: attr(data-foo <ident>); } </style> </head> diff --git a/tests/wpt/tests/css/css-values/attr-in-max.html b/tests/wpt/tests/css/css-values/attr-in-max.html index 314ed630b78..f34f5017e76 100644 --- a/tests/wpt/tests/css/css-values/attr-in-max.html +++ b/tests/wpt/tests/css/css-values/attr-in-max.html @@ -16,7 +16,7 @@ html { background: white; overflow: hidden; } #outer { position: relative; background: green; } - #outer { width: max(attr(data-test length)); height: 200px; } + #outer { width: max(attr(data-test <length>)); height: 200px; } </style> </head> diff --git a/tests/wpt/tests/css/css-values/attr-in-slotted-ref.html b/tests/wpt/tests/css/css-values/attr-in-slotted-ref.html new file mode 100644 index 00000000000..401641606ac --- /dev/null +++ b/tests/wpt/tests/css/css-values/attr-in-slotted-ref.html @@ -0,0 +1,13 @@ +<!DOCTYPE html> +<title>CSS Values Test: attr() in pseudo element ::slotted</title> +<div class=host> + <template shadowrootmode=open> + <style> + ::slotted(div) { + color: green; + } + </style> + <slot></slot> + </template> + <div>PASS if green</div> +</div>
\ No newline at end of file diff --git a/tests/wpt/tests/css/css-values/attr-in-slotted.html b/tests/wpt/tests/css/css-values/attr-in-slotted.html new file mode 100644 index 00000000000..54c792092a6 --- /dev/null +++ b/tests/wpt/tests/css/css-values/attr-in-slotted.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<title>CSS Values Test: attr() in pseudo element ::slotted</title> +<link rel="help" href="https://drafts.csswg.org/css-values/#attr-notation"> +<link rel="match" href="attr-in-slotted-ref.html"> +<div class=host> + <template shadowrootmode=open> + <style> + ::slotted(div) { + color: red; + color: attr(data-color <color>, yellow); + } + </style> + <slot data-color=blue></slot> + </template> + <div data-color=green>PASS if green</div> +</div>
\ No newline at end of file diff --git a/tests/wpt/tests/css/css-values/attr-invalid-type-001.html b/tests/wpt/tests/css/css-values/attr-invalid-type-001.html deleted file mode 100644 index 1f88c37c640..00000000000 --- a/tests/wpt/tests/css/css-values/attr-invalid-type-001.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (types) - </title> - <meta name="assert" content=" - When the type of an attr() function is known and unexpected, the declaration is ignored - " /> - <meta name="flags" content="invalid"> - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: 200px; width: attr(data-test color); height: 200px; } - - </style> - -</head> -<body> - - <div id="outer" data-test="green"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-invalid-type-002.html b/tests/wpt/tests/css/css-values/attr-invalid-type-002.html deleted file mode 100644 index dbdac8a4ba1..00000000000 --- a/tests/wpt/tests/css/css-values/attr-invalid-type-002.html +++ /dev/null @@ -1,46 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (types) - </title> - <meta name="assert" content=" - When the type of an attr() function is known and unexpected, the declaration is ignored - " /> - <meta name="flags" content="invalid"> - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: 200px; width: attr(data-test number); height: 200px; } - /* NOTE: while '0' is a valid length AND a valid number, the number type isn't a valid representation of a length. */ - /* The reason for this is that most numbers aren't valid length */ - /* ! Spec need some updates to make those assumptions clearly valid (see Tab Atkins for details) */ - - </style> - -</head> -<body> - - <div id="outer" data-test="0"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-invalidation.html b/tests/wpt/tests/css/css-values/attr-invalidation.html index a48556e5ff7..47d617010c5 100644 --- a/tests/wpt/tests/css/css-values/attr-invalidation.html +++ b/tests/wpt/tests/css/css-values/attr-invalidation.html @@ -6,7 +6,7 @@ <script src="/resources/testharnessreport.js"></script> <style> div { - width: attr(data-foo length); + width: attr(data-foo <length>); } </style> diff --git a/tests/wpt/tests/css/css-values/attr-length-invalid-cast.html b/tests/wpt/tests/css/css-values/attr-length-invalid-cast.html index 93083236360..04910df05b8 100644 --- a/tests/wpt/tests/css/css-values/attr-length-invalid-cast.html +++ b/tests/wpt/tests/css/css-values/attr-length-invalid-cast.html @@ -30,7 +30,7 @@ html { background: white; overflow: hidden; } #outer { position: relative; background: green; } - #outer { width: attr(data-test length, 200px); height: 200px; } + #outer { width: attr(data-test <length>, 200px); height: 200px; } </style> diff --git a/tests/wpt/tests/css/css-values/attr-length-invalid-fallback.html b/tests/wpt/tests/css/css-values/attr-length-invalid-fallback.html deleted file mode 100644 index e68fe7a4701..00000000000 --- a/tests/wpt/tests/css/css-values/attr-length-invalid-fallback.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (length) - </title> - <meta name="assert" content=" - When the attr() fallback is an invalid length, the delcaration is correctly ignored. - " /> - <meta name="flags" content="invalid"> - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: 200px; width: attr(data-test length, invalid); height: 200px; } - - </style> - -</head> -<body> - - <div id="outer" data-test="300px"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-length-valid-zero-nofallback.html b/tests/wpt/tests/css/css-values/attr-length-valid-zero-nofallback.html index b8a042fd403..f91121c0700 100644 --- a/tests/wpt/tests/css/css-values/attr-length-valid-zero-nofallback.html +++ b/tests/wpt/tests/css/css-values/attr-length-valid-zero-nofallback.html @@ -32,7 +32,7 @@ #outer2 { background: red; } #outer { width: 200px; height: 200px; } - #outer2 { width: 200px; width: attr(data-test length); height: 200px; } + #outer2 { width: 200px; width: attr(data-test <length>); height: 200px; } </style> diff --git a/tests/wpt/tests/css/css-values/attr-length-valid-zero.html b/tests/wpt/tests/css/css-values/attr-length-valid-zero.html index fcdebc6fad7..19ece66a9dc 100644 --- a/tests/wpt/tests/css/css-values/attr-length-valid-zero.html +++ b/tests/wpt/tests/css/css-values/attr-length-valid-zero.html @@ -32,7 +32,7 @@ #outer2 { background: red; } #outer { width: 200px; height: 200px; } - #outer2 { width: 200px; width: attr(data-test length, 0); height: 200px; } + #outer2 { width: 200px; width: attr(data-test <length>, 0); height: 200px; } </style> diff --git a/tests/wpt/tests/css/css-values/attr-length-valid.html b/tests/wpt/tests/css/css-values/attr-length-valid.html index c78258ffe60..f61c9aa4bef 100644 --- a/tests/wpt/tests/css/css-values/attr-length-valid.html +++ b/tests/wpt/tests/css/css-values/attr-length-valid.html @@ -30,7 +30,7 @@ html { background: white; overflow: hidden; } #outer { position: relative; background: green; } - #outer { width: attr(data-test length); height: 200px; } + #outer { width: attr(data-test <length>); height: 200px; } </style> diff --git a/tests/wpt/tests/css/css-values/attr-notype-fallback-ref.html b/tests/wpt/tests/css/css-values/attr-notype-fallback-ref.html index efb9b969f3a..21f7362dbaf 100644 --- a/tests/wpt/tests/css/css-values/attr-notype-fallback-ref.html +++ b/tests/wpt/tests/css/css-values/attr-notype-fallback-ref.html @@ -13,7 +13,7 @@ } #four::after { - content: ""; + content: "Not fallback value"; } #five::after { diff --git a/tests/wpt/tests/css/css-values/attr-pseudo-elem-invalidation.html b/tests/wpt/tests/css/css-values/attr-pseudo-elem-invalidation.html index 1ef912bf75d..c17704f009c 100644 --- a/tests/wpt/tests/css/css-values/attr-pseudo-elem-invalidation.html +++ b/tests/wpt/tests/css/css-values/attr-pseudo-elem-invalidation.html @@ -23,7 +23,7 @@ function test_pseudo_element_invalidation(pseudoSelector) { let elem = document.getElementById("div"); elem.setAttribute("data-foo", "150%"); - elem.style["font-size"]= "attr(data-foo percentage)"; + elem.style["font-size"]= "attr(data-foo <percentage>)"; let old_font_size = window.getComputedStyle(elem, pseudoSelector).getPropertyValue("font-size"); elem.setAttribute("data-foo", "300%"); let new_font_size = window.getComputedStyle(elem, pseudoSelector).getPropertyValue("font-size"); diff --git a/tests/wpt/tests/css/css-values/attr-px-invalid-cast.html b/tests/wpt/tests/css/css-values/attr-px-invalid-cast.html deleted file mode 100644 index 54b43b4076d..00000000000 --- a/tests/wpt/tests/css/css-values/attr-px-invalid-cast.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attributes references (pixels) - </title> - <meta name="assert" content=" - When the value of the referenced attribute is not a pixel value, the fallback value is used instead. - " /> - - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: attr(data-test px, 200px); height: 200px; } - - </style> - -</head> -<body> - - <div id="outer" data-test="300px"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-px-invalid-fallback.html b/tests/wpt/tests/css/css-values/attr-px-invalid-fallback.html deleted file mode 100644 index 27dfc102403..00000000000 --- a/tests/wpt/tests/css/css-values/attr-px-invalid-fallback.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (pixels) - </title> - <meta name="assert" content=" - When the fallback of a pixel attribute reference is invalid, the declaration is ignored. - " /> - <meta name="flags" content="invalid"> - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: 200px; width: attr(data-test px, 300); height: 200px; } - - </style> - -</head> -<body> - - <div id="outer" data-test="300"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/attr-px-valid.html b/tests/wpt/tests/css/css-values/attr-px-valid.html deleted file mode 100644 index ec96924a680..00000000000 --- a/tests/wpt/tests/css/css-values/attr-px-valid.html +++ /dev/null @@ -1,43 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title> - CSS Values and Units Test: - Attribute references (pixels) - </title> - <meta name="assert" content=" - Attribute references for pixel values are replaced correctly at computed time. - " /> - - <link - rel="author" - title="François REMY" - href="mailto:fremycompany.developer@yahoo.fr" - / > - - <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/> - - <link - rel="match" - href="reference/200-200-green.html" - /> - - <style type="text/css"> - - html, body { margin: 0px; padding: 0px; } - - html { background: white; overflow: hidden; } - #outer { position: relative; background: green; } - - #outer { width: attr(data-test px); height: 200px; } - - </style> - -</head> -<body> - - <div id="outer" data-test="200"></div> - -</body> -</html> diff --git a/tests/wpt/tests/css/css-values/signs-abs-computed.html b/tests/wpt/tests/css/css-values/signs-abs-computed.html index 8bad89e557b..fe4b938c5b4 100644 --- a/tests/wpt/tests/css/css-values/signs-abs-computed.html +++ b/tests/wpt/tests/css/css-values/signs-abs-computed.html @@ -206,4 +206,35 @@ document.getElementById('container').style.fontSize = '20px'; test_math_used('calc(sign(10%) * 100px)', '100px'); +// Basic tests (just px and em) for sign() interaction with units not +// otherwise used by the property. +test_math_used('calc(2.5 - sign(41px - 2em) / 2)', '2', {type:'number'}); +test_math_used('calc(2.5 - sign(40px - 2em) / 2)', '2.5', {type:'number'}); +test_math_used('calc(2.5 - sign(39px - 2em) / 2)', '3', {type:'number'}); +test_math_used('calc(3 + sign(42px - 2em))', '4', {type:'integer'}); +test_math_used('calc(3 + sign(40px - 2em))', '3', {type:'integer'}); +test_math_used('calc(3 + sign(38px - 2em))', '2', {type:'integer'}); +test_math_used('calc(50px + 100px * sign(42px - 2em))', '150px', {type:'length'}); +test_math_used('calc(50px + 100px * sign(40px - 2em))', '50px', {type:'length'}); +test_math_used('calc(50px + 100px * sign(38px - 2em))', '-50px', {type:'length'}); +test_math_used('calc(90deg + 30deg * sign(42px - 2em))', '120deg', {type:'angle'}); +test_math_used('calc(90deg + 30deg * sign(40px - 2em))', '90deg', {type:'angle'}); +test_math_used('calc(90deg + 30deg * sign(38px - 2em))', '60deg', {type:'angle'}); +test_math_used('calc(5s + 15s * sign(42px - 2em))', '20s', {type:'time'}); +test_math_used('calc(5s + 15s * sign(40px - 2em))', '5s', {type:'time'}); +test_math_used('calc(5s + 15s * sign(38px - 2em))', '-10s', {type:'time'}); +test_math_used('calc(100dpi + 20dpi * sign(42px - 2em))', '120dpi', {type:'resolution'}); +test_math_used('calc(100dpi + 20dpi * sign(40px - 2em))', '100dpi', {type:'resolution'}); +test_math_used('calc(100dpi + 20dpi * sign(38px - 2em))', '80dpi', {type:'resolution'}); +test_math_used('calc(3fr + 1fr * sign(42px - 2em))', '4fr', {type:'flex'}); +test_math_used('calc(3fr + 1fr * sign(40px - 2em))', '3fr', {type:'flex'}); +test_math_used('calc(3fr + 1fr * sign(38px - 2em))', '2fr', {type:'flex'}); +// repeat a few with px and rem +test_math_used('calc(2.5 - sign(33px - 2rem) / 2)', '2', {type:'number'}); +test_math_used('calc(2.5 - sign(32px - 2rem) / 2)', '2.5', {type:'number'}); +test_math_used('calc(2.5 - sign(31px - 2rem) / 2)', '3', {type:'number'}); +test_math_used('calc(50px + 100px * sign(34px - 2rem))', '150px', {type:'length'}); +test_math_used('calc(50px + 100px * sign(32px - 2rem))', '50px', {type:'length'}); +test_math_used('calc(50px + 100px * sign(30px - 2rem))', '-50px', {type:'length'}); + </script> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..33b65e6fb67 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-first-of-type-when-ancestor-changes.html @@ -0,0 +1,33 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-always-matches-negated-first-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-first-of-type-pseudo"> +<style> +.some-hidden > :not(.always-matches:not(:first-of-type)) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-hide always-matches">Hidden</div> + <div class="to-show always-matches">Shown</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..99c39827590 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-always-matches-negated-last-of-type-when-ancestor-changes.html @@ -0,0 +1,33 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-always-matches-negated-last-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-last-of-type-pseudo"> +<style> +.some-hidden > :not(.always-matches:not(:last-of-type)) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-show always-matches">Shown</div> + <div class="to-hide always-matches">Hidden</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..a3b59899853 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,9 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..6ed1f8c0e04 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-first-of-type-when-ancestor-changes.html @@ -0,0 +1,30 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-is-always-matches-negated-first-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-first-of-type-pseudo"> +<style> +.some-hidden > :not(:is(.always-matches, :not(:first-of-type))) { + display: none; +} +.to-show { + color: green; +} +</style> +<div id="ancestor"> + <div class="to-show always-matches">Shown</div> + <div class="to-show always-matches">Shown</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..a3b59899853 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,9 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..500fd3aa4ee --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-always-matches-negated-last-of-type-when-ancestor-changes.html @@ -0,0 +1,30 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-is-always-matches-negated-last-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-last-of-type-pseudo"> +<style> +.some-hidden > :not(:is(.always-matches, :not(:last-of-type))) { + display: none; +} +.to-show { + color: green; +} +</style> +<div id="ancestor"> + <div class="to-show always-matches">Shown</div> + <div class="to-show always-matches">Shown</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..e9d66755c77 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html @@ -0,0 +1,33 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-is-never-matches-negated-first-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-first-of-type-pseudo"> +<style> +.some-hidden > :not(:is(.never-matches, :not(:first-of-type))) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-hide">Hidden</div> + <div class="to-show">Shown</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..7a2c0f20222 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html @@ -0,0 +1,33 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-is-never-matches-negated-last-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-last-of-type-pseudo"> +<style> +.some-hidden > :not(:is(.never-matches, :not(:last-of-type))) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-show">Shown</div> + <div class="to-hide">Hidden</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..7e5376fc31f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-negated-first-of-type-when-ancestor-changes.html @@ -0,0 +1,34 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="author" title="David Shin" href="mailto:dshin@mozilla.com"> +<link rel="match" href="negated-negated-first-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-first-of-type-pseudo"> +<style> +.some-hidden > :not(:not(:first-of-type)) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-hide">Hidden</div> + <div class="to-show">Shown</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..2ddb130e05f --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,8 @@ +<!doctype html> +<meta charset="utf-8"> +<style> +div { + color: green; +} +</style> +<div>Shown</div> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..67d35f94dfd --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-negated-last-of-type-when-ancestor-changes.html @@ -0,0 +1,34 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="author" title="David Shin" href="mailto:dshin@mozilla.com"> +<link rel="match" href="negated-negated-last-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-last-of-type-pseudo"> +<style> +.some-hidden > :not(:not(:last-of-type)) { + display: none; +} +.to-show { + color: green; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-show">Shown</div> + <div class="to-hide">Hidden</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..cadbabc7c5a --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,2 @@ +<!doctype html> +<meta charset="utf-8"> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..c3064f6726d --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-first-of-type-when-ancestor-changes.html @@ -0,0 +1,30 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-never-matches-negated-first-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-first-of-type-pseudo"> +<style> +.some-hidden > :not(.never-matches:not(:first-of-type)) { + display: none; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-hide">Hidden</div> + <div class="to-hide">Hidden</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html new file mode 100644 index 00000000000..cadbabc7c5a --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html @@ -0,0 +1,2 @@ +<!doctype html> +<meta charset="utf-8"> diff --git a/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes.html b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes.html new file mode 100644 index 00000000000..9cdd0e4f407 --- /dev/null +++ b/tests/wpt/tests/css/selectors/invalidation/negated-never-matches-negated-last-of-type-when-ancestor-changes.html @@ -0,0 +1,30 @@ +<!doctype html> +<meta charset="utf-8"> +<html class="reftest-wait"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1926164"> +<link rel="author" title="Zach Hoffman" href="mailto:zach@zrhoffman.net"> +<link rel="match" href="negated-never-matches-negated-last-of-type-when-ancestor-changes-ref.html"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-last-of-type-pseudo"> +<style> +.some-hidden > :not(.never-matches:not(:last-of-type)) { + display: none; +} +.to-hide { + color: red; +} +</style> +<div id="ancestor"> + <div class="to-hide">Hidden</div> + <div class="to-hide">Hidden</div> +</div> +<script> +document.documentElement.offsetTop; +(async () => { + for (let i = 0; i < 10; i++) { + await new Promise(r => requestAnimationFrame(r)); + } + ancestor.classList.add("some-hidden"); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script> +</html> diff --git a/tests/wpt/tests/custom-elements/ElementInternals-accessibility.html b/tests/wpt/tests/custom-elements/ElementInternals-accessibility.html index 3b04f257dea..20861e5cfd1 100644 --- a/tests/wpt/tests/custom-elements/ElementInternals-accessibility.html +++ b/tests/wpt/tests/custom-elements/ElementInternals-accessibility.html @@ -34,12 +34,12 @@ const properties = [ "ariaChecked", "ariaColCount", "ariaColIndex", - "ariaColIndexText", + // "ariaColIndexText", // tentative -> ElementInternals-accessibility.tentative.html "ariaColSpan", "ariaControlsElements", "ariaCurrent", "ariaDescribedByElements", - "ariaDescription", + // "ariaDescription", // tentative -> ElementInternals-accessibility.tentative.html "ariaDetailsElements", "ariaDisabled", "ariaErrorMessageElements", @@ -67,7 +67,7 @@ const properties = [ "ariaRoleDescription", "ariaRowCount", "ariaRowIndex", - "ariaRowIndexText", + // "ariaRowIndexText", // tentative -> ElementInternals-accessibility.tentative.html "ariaRowSpan", "ariaSelected", "ariaSetSize", diff --git a/tests/wpt/tests/custom-elements/ElementInternals-accessibility.tentative.html b/tests/wpt/tests/custom-elements/ElementInternals-accessibility.tentative.html new file mode 100644 index 00000000000..2bab6bedfd2 --- /dev/null +++ b/tests/wpt/tests/custom-elements/ElementInternals-accessibility.tentative.html @@ -0,0 +1,41 @@ +<!DOCTYPE HTML> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +class TestElement extends HTMLElement { + constructor() { + super(); + this._internals = this.attachInternals(); + } + + get internals() { + return this._internals; + } + + set internals(val) { + throw "Can't set internals!"; + } +} +customElements.define("test-element", TestElement); +</script> + +<test-element id= "testElement"></test-element> + +<script> +const element = document.getElementById("testElement"); + + +// tentative properties +const properties = [ + "ariaColIndexText", + "ariaDescription", + "ariaRowIndexText", +]; + +for (const property of properties) { + test(() => { + assert_inherits(element.internals, property); + }, property + " is defined in ElementInternals"); +} + +</script> diff --git a/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.html b/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.html index c058084ab28..0b32326f5a4 100644 --- a/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.html +++ b/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.html @@ -15,7 +15,10 @@ <div id="log"></div> <div id="container"></div> <script> -testReflectAttribute('role', 'role', 'foo', 'bar', 'role on Element'); + +// tentative -> AriaMixin-string-attributes.tentative.html +// testReflectAttribute('role', 'role', 'foo', 'bar', 'role on Element'); + testReflectAttribute('ariaAtomic', 'aria-atomic', 'foo', 'bar', 'ariaAtomic on Element'); testReflectAttribute('ariaAutoComplete', 'aria-autocomplete', 'foo', 'bar', 'ariaAutoComplete on Element'); testReflectAttribute('ariaBrailleLabel', 'aria-braillelabel', 'foo', 'bar', 'ariaBrailleLabel on Element'); @@ -24,10 +27,16 @@ testReflectAttribute('ariaBusy', 'aria-busy', 'foo', 'bar', 'ariaBusy on Element testReflectAttribute('ariaChecked', 'aria-checked', 'foo', 'bar', 'ariaChecked on Element'); testReflectAttribute('ariaColCount', 'aria-colcount', 'foo', 'bar', 'ariaColCount on Element'); testReflectAttribute('ariaColIndex', 'aria-colindex', 'foo', 'bar', 'ariaColIndex on Element'); -testReflectAttribute('ariaColIndexText', 'aria-colindextext', 'foo', 'bar', 'ariaColIndexText on Element'); + +// tentative -> AriaMixin-string-attributes.tentative.html +// testReflectAttribute('ariaColIndexText', 'aria-colindextext', 'foo', 'bar', 'ariaColIndexText on Element'); + testReflectAttribute('ariaColSpan', 'aria-colspan', 'foo', 'bar', 'ariaColSpan on Element'); testReflectAttribute('ariaCurrent', 'aria-current', 'foo', 'bar', 'ariaCurrent on Element'); -testReflectAttribute('ariaDescription', 'aria-description', 'foo', 'bar', 'ariaDescription on Element'); + +// tentative -> AriaMixin-string-attributes.tentative.html +// testReflectAttribute('ariaDescription', 'aria-description', 'foo', 'bar', 'ariaDescription on Element'); + testReflectAttribute('ariaDisabled', 'aria-disabled', 'foo', 'bar', 'ariaDisabled on Element'); testReflectAttribute('ariaExpanded', 'aria-expanded', 'foo', 'bar', 'ariaExpanded on Element'); testReflectAttribute('ariaHasPopup', 'aria-haspopup', 'foo', 'bar', 'ariaHasPopup on Element'); @@ -50,7 +59,10 @@ testReflectAttribute('ariaRequired', 'aria-required', 'foo', 'bar', 'ariaRequire testReflectAttribute('ariaRoleDescription', 'aria-roledescription', 'foo', 'bar', 'ariaRoleDescription on Element'); testReflectAttribute('ariaRowCount', 'aria-rowcount', 'foo', 'bar', 'ariaRowCount on Element'); testReflectAttribute('ariaRowIndex', 'aria-rowindex', 'foo', 'bar', 'ariaRowIndex on Element'); -testReflectAttribute('ariaRowIndexText', 'aria-rowindextext', 'foo', 'bar', 'ariaRowIndexText on Element'); + +// tentative -> AriaMixin-string-attributes.tentative.html +// testReflectAttribute('ariaRowIndexText', 'aria-rowindextext', 'foo', 'bar', 'ariaRowIndexText on Element'); + testReflectAttribute('ariaRowSpan', 'aria-rowspan', 'foo', 'bar', 'ariaRowSpan on Element'); testReflectAttribute('ariaSelected', 'aria-selected', 'foo', 'bar', 'ariaSelected on Element'); testReflectAttribute('ariaSetSize', 'aria-setsize', 'foo', 'bar', 'ariaSetSize on Element'); diff --git a/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.tentative.html b/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.tentative.html new file mode 100644 index 00000000000..8c81adb30c6 --- /dev/null +++ b/tests/wpt/tests/custom-elements/reactions/AriaMixin-string-attributes.tentative.html @@ -0,0 +1,27 @@ +<!DOCTYPE html> +<html> +<head> +<title>Custom Elements: CEReactions on Element interface</title> +<meta name="author" title="Ryosuke Niwa" href="mailto:rniwa@webkit.org"> +<meta name="assert" content="String attributes of AriaAttributes interface must have CEReactions"> +<meta name="help" content="https://dom.spec.whatwg.org/#element"> +<meta name="help" content="https://w3c.github.io/DOM-Parsing/"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../resources/custom-elements-helpers.js"></script> +<script src="./resources/reactions.js"></script> +</head> +<body> +<div id="log"></div> +<div id="container"></div> + +// tentative properties that were added mid-year... merge back in after Interop 2024 completes +<script> +testReflectAttribute('role', 'role', 'foo', 'bar', 'role on Element'); +testReflectAttribute('ariaColIndexText', 'aria-colindextext', 'foo', 'bar', 'ariaColIndexText on Element'); +testReflectAttribute('ariaDescription', 'aria-description', 'foo', 'bar', 'ariaDescription on Element'); +testReflectAttribute('ariaRowIndexText', 'aria-rowindextext', 'foo', 'bar', 'ariaRowIndexText on Element'); +</script> + +</body> +</html> diff --git a/tests/wpt/tests/docs/running-tests/webkitgtk_minibrowser.md b/tests/wpt/tests/docs/running-tests/webkitgtk_minibrowser.md index 7aac81e5fce..5dd047536ed 100644 --- a/tests/wpt/tests/docs/running-tests/webkitgtk_minibrowser.md +++ b/tests/wpt/tests/docs/running-tests/webkitgtk_minibrowser.md @@ -12,9 +12,11 @@ The WebKitGTK MiniBrowser is not installed on the default binary path. The `wpt` script will try to automatically locate it, but if you need to run it manually you can find it on any of this paths: -* Fedora: `/usr/libexec/webkit2gtk-4.0/MiniBrowser` -* Debian or Ubuntu: `/usr/lib/x86_64-linux-gnu/webkit2gtk-4.0/MiniBrowser` - * Note: if the machine architecture is not `x86_64`, then it will be located - inside: - `/usr/lib/${TRIPLET}/webkit2gtk-4.0/MiniBrowser` - where `TRIPLET=$(gcc -dumpmachine)` +* Fedora: `/usr/libexec/webkit2gtk-${VERSION}/MiniBrowser` +* Debian or Ubuntu: `/usr/lib/x86_64-linux-gnu/webkit2gtk-${VERSION}/MiniBrowser` +* Note: + * `VERSION` is `4.0` or `4.1`. + * If not Fedora and the machine architecture is not `x86_64`, then it will + be located inside: + `/usr/lib/${TRIPLET}/webkit2gtk-${VERSION}/MiniBrowser` + where `TRIPLET=$(gcc -dumpmachine)` diff --git a/tests/wpt/tests/dom/abort/AbortSignal.any.js b/tests/wpt/tests/dom/abort/AbortSignal.any.js index 3bbdc11a92f..c2fc88d3b4f 100644 --- a/tests/wpt/tests/dom/abort/AbortSignal.any.js +++ b/tests/wpt/tests/dom/abort/AbortSignal.any.js @@ -1,3 +1,5 @@ +// META: global=window,dedicatedworker,shadowrealm + test(t => { const signal = AbortSignal.abort(); assert_true(signal instanceof AbortSignal, "returned object is an AbortSignal"); @@ -10,31 +12,3 @@ async_test(t => { s.onabort = t.unreached_func("abort event handler called"); t.step_timeout(() => { t.done(); }, 2000); }, "signal returned by AbortSignal.abort() should not fire abort event"); - -test(t => { - const signal = AbortSignal.timeout(0); - assert_true(signal instanceof AbortSignal, "returned object is an AbortSignal"); - assert_false(signal.aborted, "returned signal is not already aborted"); -}, "AbortSignal.timeout() returns a non-aborted signal"); - -async_test(t => { - const signal = AbortSignal.timeout(5); - signal.onabort = t.step_func_done(() => { - assert_true(signal.aborted, "signal is aborted"); - assert_true(signal.reason instanceof DOMException, "signal.reason is a DOMException"); - assert_equals(signal.reason.name, "TimeoutError", "signal.reason is a TimeoutError"); - }); -}, "Signal returned by AbortSignal.timeout() times out"); - -async_test(t => { - let result = ""; - for (const value of ["1", "2", "3"]) { - const signal = AbortSignal.timeout(5); - signal.onabort = t.step_func(() => { result += value; }); - } - - const signal = AbortSignal.timeout(5); - signal.onabort = t.step_func_done(() => { - assert_equals(result, "123", "Timeout order should be 123"); - }); -}, "AbortSignal timeouts fire in order"); diff --git a/tests/wpt/tests/dom/abort/event.any.js b/tests/wpt/tests/dom/abort/event.any.js index 34af8ee5c56..afc003b94e6 100644 --- a/tests/wpt/tests/dom/abort/event.any.js +++ b/tests/wpt/tests/dom/abort/event.any.js @@ -1,3 +1,5 @@ +// META: global=window,dedicatedworker,shadowrealm + test(t => { const c = new AbortController(), s = c.signal; diff --git a/tests/wpt/tests/dom/abort/timeout-shadowrealm.any.js b/tests/wpt/tests/dom/abort/timeout-shadowrealm.any.js new file mode 100644 index 00000000000..c87b047c221 --- /dev/null +++ b/tests/wpt/tests/dom/abort/timeout-shadowrealm.any.js @@ -0,0 +1,5 @@ +// META: global=shadowrealm + +test(t => { + assert_not_own_property(AbortSignal, "timeout", "AbortSignal does not have a 'timeout' property"); +}, "AbortSignal.timeout() is not exposed in ShadowRealm"); diff --git a/tests/wpt/tests/dom/abort/timeout.any.js b/tests/wpt/tests/dom/abort/timeout.any.js new file mode 100644 index 00000000000..61b595e717c --- /dev/null +++ b/tests/wpt/tests/dom/abort/timeout.any.js @@ -0,0 +1,29 @@ +// META: global=window,dedicatedworker + +test(t => { + const signal = AbortSignal.timeout(0); + assert_true(signal instanceof AbortSignal, "returned object is an AbortSignal"); + assert_false(signal.aborted, "returned signal is not already aborted"); +}, "AbortSignal.timeout() returns a non-aborted signal"); + +async_test(t => { + const signal = AbortSignal.timeout(5); + signal.onabort = t.step_func_done(() => { + assert_true(signal.aborted, "signal is aborted"); + assert_true(signal.reason instanceof DOMException, "signal.reason is a DOMException"); + assert_equals(signal.reason.name, "TimeoutError", "signal.reason is a TimeoutError"); + }); +}, "Signal returned by AbortSignal.timeout() times out"); + +async_test(t => { + let result = ""; + for (const value of ["1", "2", "3"]) { + const signal = AbortSignal.timeout(5); + signal.onabort = t.step_func(() => { result += value; }); + } + + const signal = AbortSignal.timeout(5); + signal.onabort = t.step_func_done(() => { + assert_equals(result, "123", "Timeout order should be 123"); + }); +}, "AbortSignal timeouts fire in order"); diff --git a/tests/wpt/tests/dom/nodes/ParentNode-append.html b/tests/wpt/tests/dom/nodes/ParentNode-append.html index 4e101f73a25..928c184b8d5 100644 --- a/tests/wpt/tests/dom/nodes/ParentNode-append.html +++ b/tests/wpt/tests/dom/nodes/ParentNode-append.html @@ -59,6 +59,16 @@ function test_append(node, nodeName) { assert_equals(parent.childNodes[1], x); assert_equals(parent.childNodes[2].textContent, 'text'); }, nodeName + '.append() with one element and text as argument, on a parent having a child.'); + + test(function() { + const parent = node.cloneNode(); + const x = document.createElement('x'); + const y = document.createElement('y'); + parent.append(x, y, x); + assert_equals(parent.childNodes.length, 2); + assert_equals(parent.childNodes[0], y); + assert_equals(parent.childNodes[1], x); + }, nodeName + '.append() with the same element twice.'); } test_append(document.createElement('div'), 'Element'); diff --git a/tests/wpt/tests/dom/nodes/moveBefore/tentative/focus-within.html b/tests/wpt/tests/dom/nodes/moveBefore/tentative/focus-within.html new file mode 100644 index 00000000000..18d8c93b998 --- /dev/null +++ b/tests/wpt/tests/dom/nodes/moveBefore/tentative/focus-within.html @@ -0,0 +1,81 @@ +<!DOCTYPE html> +<title>moveBefore should handle focus bubbling correctly</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<body> +<section id="old_parent"> +<button id="button" tabindex="1">Button</button> +</section> +<section id="new_parent"> +</section> +<section id="inert_parent" inert> +</section> +<section id="inert_when_not_empty_parent"> +</section> + +<style> + #inert_when_not_empty_parent:has(button) { + display: none; + } +</style> + +<script> +function assert_focus_within(expected) { + const element_to_string = e => e.id || e.nodeName; + assert_array_equals( + Array.from(document.querySelectorAll(":focus-within"), element_to_string), + expected.map(element_to_string)); +} + +test(t => { + const old_parent = document.querySelector("#old_parent"); + const button = document.querySelector("#button"); + t.add_cleanup(() => old_parent.append(button)); + button.focus(); + assert_focus_within([document.documentElement, document.body, old_parent, button]); + new_parent.moveBefore(button, null); + assert_focus_within([document.documentElement, document.body, new_parent, button]); +}, "focus-within should be updated when reparenting focused element directly"); + +test(t => { + const old_parent = document.querySelector("#old_parent"); + const button = document.querySelector("#button"); + t.add_cleanup(() => document.body.append(old_parent)); + button.focus(); + new_parent.moveBefore(old_parent, null); + assert_focus_within([document.documentElement, document.body, new_parent, old_parent, button]); +}, "focus-within should be updated when reparenting an element that has focus within"); + +test(t => { + const old_parent = document.querySelector("#old_parent"); + const button = document.querySelector("#button"); + t.add_cleanup(() => old_parent.append(button)); + button.focus(); + old_parent.moveBefore(button, null); + assert_focus_within([document.documentElement, document.body, old_parent, button]); +}, "focus-within should remain the same when moving to the same parent"); + +promise_test(async t => { + const old_parent = document.querySelector("#old_parent"); + const inert_parent= document.querySelector("#inert_parent"); + const button = document.querySelector("#button"); + t.add_cleanup(() => old_parent.append(button)); + button.focus(); + inert_parent.moveBefore(button, null); + assert_focus_within([document.documentElement, document.body, inert_parent, button]); + await new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(() => resolve()))); + assert_focus_within([]); +}, ":focus-within should be eventually up to date when moving to an inert subtree"); + +promise_test(async t => { + const old_parent = document.querySelector("#old_parent"); + const inert_when_not_empty_parent = document.querySelector("#inert_when_not_empty_parent"); + const button = document.querySelector("#button"); + t.add_cleanup(() => old_parent.append(button)); + button.focus(); + inert_when_not_empty_parent.moveBefore(button, null); + assert_focus_within([document.documentElement, document.body, inert_when_not_empty_parent, button]); + await new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(() => resolve()))); + assert_focus_within([]); +}, ":focus-within should be eventually up to date when moving to a subtree that would become inert via style"); +</script> diff --git a/tests/wpt/tests/dom/nodes/moveBefore/tentative/selection-preserve.html b/tests/wpt/tests/dom/nodes/moveBefore/tentative/selection-preserve.html index 04b81c9a056..8739209b620 100644 --- a/tests/wpt/tests/dom/nodes/moveBefore/tentative/selection-preserve.html +++ b/tests/wpt/tests/dom/nodes/moveBefore/tentative/selection-preserve.html @@ -7,28 +7,155 @@ <script src="/resources/testdriver-actions.js"></script> <script src="/resources/testdriver-vendor.js"></script> </head> + <body> -<div id=old_parent><span id=text>Text</span></div> -<div id="new_parent"></div> </body> + <script> - 'use strict'; - - promise_test(async t => { - const text = document.querySelector("#text"); - const old_parent = document.querySelector("#old_parent"); - const new_parent = document.querySelector("#new_parent"); - const event_watcher = new EventWatcher(t, text, ["mouseup"]); - const actions_promise = new test_driver.Actions() - .pointerMove(0, 0, {origin: text}) - .pointerDown() - .pointerMove(text.clientWidth, text.clientHeight, {origin: text}) - .pointerUp() - .send(); - await event_watcher.wait_for(["mouseup"]); - assert_equals(getSelection().anchorNode.textContent, "Text"); - new_parent.moveBefore(text, null); - assert_equals(getSelection().anchorNode.textContent, "Text"); - }, "moveBefore should not reset text selection"); +'use strict'; + +async function select_range(t, anchorNode, focusNode) { + await new test_driver.Actions() + .pointerMove(0, 0, {origin: anchorNode}) + .pointerDown() + .pointerMove(focusNode.clientWidth, focusNode.clientHeight, {origin: focusNode}) + .pointerUp() + .send(); +} + +promise_test(async t => { + document.body.innerHTML = ` + <div id=old_parent> + <span>This text does not move</span> + <span id=text>Text</span> + </div> + <div id=new_parent></div>`; + getSelection().removeAllRanges(); + + await select_range(t, text, text); + + // Don't first verify that `getSelection().anchorNode` is the expected + // `<span id=text>` node that was selected above. If we did that, then at + // least in Chromium browsers, this would generate a new Range capturing the + // visual selection, which would be cached to the internal `DOMSelection` + // object. Then the move would have two effects: + // + // 1. The internal visual selection would change as a result of + // `moveBefore()` + // 2. But the Range representing the visual selection would remain + // unchanged, since it was cached to the `DOMSelection` object and not + // updated during `moveBefore()`. This means if (a) the visual selection, + // and (b) the "API-returned" selection Range are out of sync after + // `moveBefore()`, it would be impossible to detect the discrepancy + // without a reftest. + // + // So instead, we will just dive right into `moveBefore()`, and then compute + // the selection range *after*, which will accurately represent the internal + // visual selection that the user sees, and we can run our assertions on it. + new_parent.moveBefore(text, null); + assert_equals(getSelection().anchorNode, text.firstChild); +}, "moveBefore should not reset selection with preceding text"); + +promise_test(async t => { + document.body.innerHTML = ` + <div id=old_parent> + <span>This text does not move</span> + <span id=text>Text</span> + <span>This text ALSO does not move</span> + </div> + <div id=new_parent></div>`; + getSelection().removeAllRanges(); + + await select_range(t, text, text); + + new_parent.moveBefore(text, null); + assert_equals(getSelection().anchorNode, text.firstChild); +}, "moveBefore should not reset selection with preceding and following text"); + +const kHTML = ` + <div id=grandparentDiv> + <span id=grandparentParagraph>Grandparent paragraph</span> + <div id=parentDiv> + <span id=parentParagraph>Parent paragraph</span> + <div id=childDiv> + <span id=childParagraph1>Child paragraph one</span> + <span id=childParagraph2>Paragraph two</span> + </div> + </div> + </div> +`; + +// Selection spans parent->child. +promise_test(async t => { + document.body.innerHTML = kHTML; + getSelection().removeAllRanges(); + await select_range(t, parentParagraph, childParagraph1); + + grandparentDiv.moveBefore(parentDiv, grandparentParagraph); + assert_equals(getSelection().anchorNode, parentParagraph.firstChild); + assert_equals(getSelection().focusNode, childParagraph1.firstChild); +}, "moveBefore should not reset selection that enters a subtree, when the " + + "whole selection is moved"); + +// Selection anchor node is moved upwards in the DOM, to suddenly intersect more +// nodes. +promise_test(async t => { + document.body.innerHTML = kHTML; + getSelection().removeAllRanges(); + await select_range(t, parentParagraph, childParagraph1); + + grandparentDiv.moveBefore(parentParagraph, grandparentParagraph); + assert_equals(getSelection().anchorNode, parentParagraph.firstChild); + assert_equals(getSelection().focusNode, childParagraph1.firstChild); + assert_true(getSelection().getRangeAt(0).intersectsNode(grandparentParagraph)); +}, "moveBefore anchor node moved up to expand selection and absorb nodes"); + +// Intersecting nodes are moved *out* of the selection. +promise_test(async t => { + document.body.innerHTML = kHTML; + getSelection().removeAllRanges(); + await select_range(t, grandparentParagraph, childParagraph2); + + grandparentDiv.moveBefore(childParagraph1, grandparentParagraph); + assert_equals(getSelection().anchorNode, grandparentParagraph.firstChild); + assert_equals(getSelection().focusNode, childParagraph2.firstChild); + assert_false(getSelection().getRangeAt(0).intersectsNode(childParagraph1)); +}, "moveBefore move intersecting nodes out of a selection"); + +// Selection focus node is moved upwards in the DOM, shrinking the selection and +// excluding once-intersecting nodes. +promise_test(async t => { + document.body.innerHTML = kHTML; + getSelection().removeAllRanges(); + await select_range(t, grandparentParagraph, childParagraph2); + + parentDiv.moveBefore(childDiv, parentParagraph); + assert_equals(getSelection().anchorNode, grandparentParagraph.firstChild); + assert_equals(getSelection().focusNode, childParagraph2.firstChild); + assert_false(getSelection().getRangeAt(0).intersectsNode(parentParagraph)); +}, "moveBefore focus node moved up to shrink selection and exclude nodes"); + +// Selection focus node is moved upwards in the DOM, shrinking the selection and +// excluding once-intersecting nodes. +promise_test(async t => { + document.body.innerHTML = ` + <ul id=list> + <li id=i1>One</li> + <li id=i2>Two</li> + <li id=i3>Three</li> + <li id=i4>Four</li> + </ul> + `; + getSelection().removeAllRanges(); + await select_range(t, i3, i4); + + // Move the last list item to the position before the first. This pulls the + // range upwards, suddenly intersecting both `i2` and `i3`. + list.moveBefore(i4, i1); + assert_equals(getSelection().focusNode, i4.firstChild); + assert_equals(getSelection().anchorNode, i3.firstChild); + assert_true(getSelection().getRangeAt(0).intersectsNode(i2)); + assert_true(getSelection().getRangeAt(0).intersectsNode(i3)); +}, "moveBefore selection is preserved when directionality changes"); </script> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/tests/editing/plaintext-only/insertHTML.html b/tests/wpt/tests/editing/plaintext-only/insertHTML.html index 00bd0df1d52..efc2609828c 100644 --- a/tests/wpt/tests/editing/plaintext-only/insertHTML.html +++ b/tests/wpt/tests/editing/plaintext-only/insertHTML.html @@ -43,7 +43,7 @@ addEventListener("load", () => { insertHTML: "<pre>1st line\n2nd line</pre>", expected: useBR ? "1st line<br>2nd line" - : ["1st line<br>2nd line", "1st line\n2nd line"], + : "1st line\n2nd line", }, { // text should be inserted into the <b> @@ -79,20 +79,19 @@ addEventListener("load", () => { // inserting one paragraph should cause inserting only its contents. // (but it's okay other serialized text.) insertHTML: "<div>abc<br>def</div>", - expected: useBR ? "abc<br>def" : ["abc<br>def", "abc\ndef"], + expected: useBR ? "abc<br>def" : "abc\ndef", }, { // inserting 2 or more paragraphs should be handled as multiple lines insertHTML: "<div>abc</div><div>def</div>", - expected: useBR ? "abc<br>def" : ["abc<br>def", "abc\ndef"], + expected: useBR ? "abc<br>def" : "abc\ndef", }, { // inserting 2 or more paragraphs should be handled as multiple lines insertHTML: "<div>abc<br>def</div><div>ghi<br>jkl</div>", expected: useBR ? "abc<br>def<br>ghi<br>jkl" - : ["abc<br>def<br>ghi<br>jkl", - "abc\ndef\nghi\njkl"], + : "abc\ndef\nghi\njkl", }, { // <noscript> content should not be inserted diff --git a/tests/wpt/tests/editing/plaintext-only/insertLineBreak.html b/tests/wpt/tests/editing/plaintext-only/insertLineBreak.html index 73ee625dd62..32448ed37e2 100644 --- a/tests/wpt/tests/editing/plaintext-only/insertLineBreak.html +++ b/tests/wpt/tests/editing/plaintext-only/insertLineBreak.html @@ -40,11 +40,11 @@ addEventListener("load", () => { for (const data of [ { initialInnerHTML: "A[]B", - expected: useBR ? "A<br>B" : ["A<br>B", "A\nB"], + expected: useBR ? "A<br>B" : "A\nB", }, { initialInnerHTML: "<p>{}<br></p>", - expected: useBR ? "<p><br><br></p>" : ["<p><br><br></p>", "<p>\n\n</p>", "<p>\n<br></p>"], + expected: useBR ? "<p><br><br></p>" : "<p>\n\n</p>", }, { initialInnerHTML: `<p style="white-space:normal">A[]B</p>`, @@ -64,85 +64,75 @@ addEventListener("load", () => { }, { initialInnerHTML: "<ul><li>[]AB</li></ul>", - expected: useBR ? "<ul><li><br>AB</li></ul>" : ["<ul><li><br>AB</li></ul>", "<ul><li>\nAB</li></ul>"], + expected: useBR ? "<ul><li><br>AB</li></ul>" : "<ul><li>\nAB</li></ul>", }, { initialInnerHTML: "<ul><li>A[]B</li></ul>", - expected: useBR ? "<ul><li>A<br>B</li></ul>" : ["<ul><li>A<br>B</li></ul>", "<ul><li>A\nB</li></ul>"], + expected: useBR ? "<ul><li>A<br>B</li></ul>" : "<ul><li>A\nB</li></ul>", }, { initialInnerHTML: "<ul><li>AB[]</li></ul>", expected: useBR ? "<ul><li>AB<br><br></li></ul>" - : ["<ul><li>AB<br><br></li></ul>", "<ul><li>AB\n\n</li></ul>", "<ul><li>AB\n<br></li></ul>"], + : "<ul><li>AB\n\n</li></ul>", }, { initialInnerHTML: "<dl><dt>[]AB</dt></dl>", - expected: useBR ? "<dl><dt><br>AB</dt></dl>" : ["<dl><dt><br>AB</dt></dl>", "<dl><dt>\nAB</dt></dl>"], + expected: useBR ? "<dl><dt><br>AB</dt></dl>" : "<dl><dt>\nAB</dt></dl>", }, { initialInnerHTML: "<dl><dt>A[]B</dt></dl>", - expected: useBR ? "<dl><dt>A<br>B</dt></dl>" : ["<dl><dt>A<br>B</dt></dl>", "<dl><dt>A\nB</dt></dl>"], + expected: useBR ? "<dl><dt>A<br>B</dt></dl>" : "<dl><dt>A\nB</dt></dl>", }, { initialInnerHTML: "<dl><dt>AB[]</dt></dl>", expected: useBR ? "<dl><dt>AB<br><br></dt></dl>" - : ["<dl><dt>AB<br><br></dt></dl>", "<dl><dt>AB\n\n</dt></dl>", "<dl><dt>AB\n<br></dt></dl>"], + : "<dl><dt>AB\n\n</dt></dl>", }, { initialInnerHTML: "<dl><dd>[]AB</dd></dl>", - expected: useBR ? "<dl><dd><br>AB</dd></dl>" : ["<dl><dd><br>AB</dd></dl>", "<dl><dd>\nAB</dd></dl>"], + expected: useBR ? "<dl><dd><br>AB</dd></dl>" : "<dl><dd>\nAB</dd></dl>", }, { initialInnerHTML: "<dl><dd>A[]B</dd></dl>", - expected: useBR ? "<dl><dd>A<br>B</dd></dl>" : ["<dl><dd>A<br>B</dd></dl>", "<dl><dd>A\nB</dd></dl>"], + expected: useBR ? "<dl><dd>A<br>B</dd></dl>" : "<dl><dd>A\nB</dd></dl>", }, { initialInnerHTML: "<dl><dd>AB[]</dd></dl>", expected: useBR ? "<dl><dd>AB<br><br></dd></dl>" - : ["<dl><dd>AB<br><br></dd></dl>", "<dl><dd>AB\n\n</dd></dl>", "<dl><dd>AB\n<br></dd></dl>"], + : "<dl><dd>AB\n\n</dd></dl>", }, { initialInnerHTML: "<table><tbody><tr><td>[]AB</td></tr></tbody></table>", expected: useBR ? "<table><tbody><tr><td><br>AB</td></tr></tbody></table>" - : [ - "<table><tbody><tr><td><br>AB<br></td></tr></tbody></table>", - "<table><tbody><tr><td>\nAB</td></tr></tbody></table>", - ], + : "<table><tbody><tr><td>\nAB</td></tr></tbody></table>", }, { initialInnerHTML: "<table><tbody><tr><td>A[]B</td></tr></tbody></table>", expected: useBR ? "<table><tbody><tr><td>A<br>B</td></tr></tbody></table>" - : [ - "<table><tbody><tr><td>A<br>B<br></td></tr></tbody></table>", - "<table><tbody><tr><td>A\nB</td></tr></tbody></table>", - ], + : "<table><tbody><tr><td>A\nB</td></tr></tbody></table>", }, { initialInnerHTML: "<table><tbody><tr><td>AB[]</td></tr></tbody></table>", expected: useBR ? "<table><tbody><tr><td>AB<br><br></td></tr></tbody></table>" - : [ - "<table><tbody><tr><td>AB<br><br></td></tr></tbody></table>", - "<table><tbody><tr><td>AB\n\n</td></tr></tbody></table>", - "<table><tbody><tr><td>AB\n<br></td></tr></tbody></table>", - ], + : "<table><tbody><tr><td>AB\n\n</td></tr></tbody></table>", }, { initialInnerHTML: "<h1>[]AB</h1>", - expected: useBR ? "<h1><br>AB</h1>" : ["<h1><br>AB</h1>", "<h1>\nAB</h1>"], + expected: useBR ? "<h1><br>AB</h1>" : "<h1>\nAB</h1>", }, { initialInnerHTML: "<h1>A[]B</h1>", - expected: useBR ? "<h1>A<br>B</h1>" : ["<h1>A<br>B</h1>", "<h1>A\nB</h1>"], + expected: useBR ? "<h1>A<br>B</h1>" : "<h1>A\nB</h1>", }, { initialInnerHTML: "<h1>AB[]</h1>", - expected: useBR ? "<h1>AB<br><br></h1>" : ["<h1>AB<br><br></h1>", "<h1>AB\n\n</h1>", "<h1>AB\n<br></h1>"], + expected: useBR ? "<h1>AB<br><br></h1>" : "<h1>AB\n\n</h1>", }, ]) { test(() => { diff --git a/tests/wpt/tests/editing/plaintext-only/insertParagraph.html b/tests/wpt/tests/editing/plaintext-only/insertParagraph.html index 429da8d134f..70cbdd1b368 100644 --- a/tests/wpt/tests/editing/plaintext-only/insertParagraph.html +++ b/tests/wpt/tests/editing/plaintext-only/insertParagraph.html @@ -36,7 +36,7 @@ addEventListener("load", () => { for (const data of [ { initialInnerHTML: "<p>[]AB</p>", - expected: useBR ? "<p><br></p><p>AB</p>" : ["<p><br></p><p>AB</p>", "<p>\n</p><p>AB</p>"], + expected: useBR ? "<p><br></p><p>AB</p>" : "<p>\n</p><p>AB</p>", }, { initialInnerHTML: "<p>A[]B</p>", @@ -44,7 +44,7 @@ addEventListener("load", () => { }, { initialInnerHTML: "<p>AB[]</p>", - expected: useBR ? "<p>AB</p><p><br></p>" : ["<p>AB</p><p><br></p>", "<p>AB</p><p>\n</p>"], + expected: useBR ? "<p>AB</p><p><br></p>" : "<p>AB</p><p>\n</p>", }, { initialInnerHTML: `<p style="white-space:normal">[]AB</p>`, @@ -54,28 +54,25 @@ addEventListener("load", () => { initialInnerHTML: `<p style="white-space:pre">[]AB</p>`, expected: useBR ? `<p style="white-space:pre"><br></p><p style="white-space:pre">AB</p>` - : [`<p style="white-space:pre"><br></p><p style="white-space:pre">AB</p>`, - `<p style="white-space:pre">\n</p><p style="white-space:pre">AB</p>`], + : `<p style="white-space:pre">\n</p><p style="white-space:pre">AB</p>`, }, { initialInnerHTML: `<p style="white-space:pre-line">[]AB</p>`, expected: useBR ? `<p style="white-space:pre-line"><br></p><p style="white-space:pre-line">AB</p>` - : [`<p style="white-space:pre-line"><br></p><p style="white-space:pre-line">AB</p>`, - `<p style="white-space:pre-line">\n</p><p style="white-space:pre-line">AB</p>`], + : `<p style="white-space:pre-line">\n</p><p style="white-space:pre-line">AB</p>`, }, { initialInnerHTML: `<p style="white-space:pre-wrap">[]AB</p>`, expected: useBR ? `<p style="white-space:pre-wrap"><br></p><p style="white-space:pre-wrap">AB</p>` - : [`<p style="white-space:pre-wrap"><br></p><p style="white-space:pre-wrap">AB</p>`, - `<p style="white-space:pre-wrap">\n</p><p style="white-space:pre-wrap">AB</p>`], + : `<p style="white-space:pre-wrap">\n</p><p style="white-space:pre-wrap">AB</p>`, }, { initialInnerHTML: "<ul><li>[]AB</li></ul>", expected: useBR ? "<ul><li><br></li><li>AB</li></ul>" - : ["<ul><li><br></li><li>AB</li></ul>", "<ul><li>\n</li><li>AB</li></ul>"], + : "<ul><li>\n</li><li>AB</li></ul>", }, { initialInnerHTML: "<ul><li>A[]B</li></ul>", @@ -85,7 +82,7 @@ addEventListener("load", () => { initialInnerHTML: "<ul><li>AB[]</li></ul>", expected: useBR ? "<ul><li>AB</li><li><br></li></ul>" - : ["<ul><li>AB</li><li><br></li></ul>", "<ul><li>AB</li><li>\n</li></ul>"], + : "<ul><li>AB</li><li>\n</li></ul>", }, ]) { test(() => { diff --git a/tests/wpt/tests/editing/plaintext-only/insertText.html b/tests/wpt/tests/editing/plaintext-only/insertText.html index 664b9befb8d..4a3ef23bbbd 100644 --- a/tests/wpt/tests/editing/plaintext-only/insertText.html +++ b/tests/wpt/tests/editing/plaintext-only/insertText.html @@ -39,7 +39,7 @@ addEventListener("load", () => { initialInnerHTML: "{}<br>", insertText: " ", expected: collapseWhiteSpaces - ? (useBR ? [" <br>", " "] : [" <br>", " \n", " "]) + ? (useBR ? [" <br>", " "] : [" \n", " "]) : " ", }, { @@ -109,7 +109,7 @@ addEventListener("load", () => { // the empty paragraph should be wrapped in the <b>. expected: useBR ? "<p><b><br></b></p><p><b>aAB</b></p>" - : ["<p><b><br></b></p><p><b>aAB</b></p>", "<p><b>\n</b></p><p><b>aAB</b></p>"], + : "<p><b>\n</b></p><p><b>aAB</b></p>", }, { initialInnerHTML: "<p><b>A[]B</b></p>", @@ -134,7 +134,7 @@ addEventListener("load", () => { insertText: "a", expected: useBR ? "<p><b><br></b></p><p><b>a</b></p>" - : ["<p><b><br></b></p><p><b>a</b></p>", "<p><b>\n</b></p><p><b>a</b></p>"], + : "<p><b>\n</b></p><p><b>a</b></p>", }, { initialInnerHTML: "<p><b>[]AB</b></p>", @@ -143,7 +143,7 @@ addEventListener("load", () => { insertText: "a", expected: useBR ? "<p><b><br>aAB</b></p>" - : ["<p><b><br>aAB</b></p>", "<p><b>\naAB</b></p>"], + : "<p><b>\naAB</b></p>", }, { initialInnerHTML: "<p><b>A[]B</b></p>", @@ -152,7 +152,7 @@ addEventListener("load", () => { insertText: "a", expected: useBR ? "<p><b>A<br>aB</b></p>" - : ["<p><b>A<br>aB</b></p>", "<p><b>A\naB</b></p>"], + : "<p><b>A\naB</b></p>", }, { initialInnerHTML: "<p><b>AB[]</b></p>", @@ -163,7 +163,7 @@ addEventListener("load", () => { // the placeholder line break (if there is) should be in <b>. expected: useBR ? "<p><b>AB<br>a</b></p>" - : ["<p><b>AB<br>a</b></p>", "<p><b>AB\na</b></p>"], + : "<p><b>AB\na</b></p>", }, { initialInnerHTML: "<p><b>[AB]</b></p>", @@ -174,7 +174,7 @@ addEventListener("load", () => { // the placeholder line break (if there is) should be in <b>. expected: useBR ? "<p><b><br>a</b></p>" - : ["<p><b><br>a</b></p>", "<p><b>\na</b></p>"], + : "<p><b>\na</b></p>", }, { initialInnerHTML: "<p><b>[AB]</b></p>", diff --git a/tests/wpt/tests/editing/plaintext-only/paste.https.html b/tests/wpt/tests/editing/plaintext-only/paste.https.html index 9081028732a..191a83ff8f0 100644 --- a/tests/wpt/tests/editing/plaintext-only/paste.https.html +++ b/tests/wpt/tests/editing/plaintext-only/paste.https.html @@ -163,9 +163,7 @@ addEventListener("load", () => { assert_in_array( editingHost.innerHTML, [ - "Aabc<br>defB", "Aabc\ndefB", - "A<br>abc<br>def<br>B", "A\nabc\ndef\nB", ], "Each paragraph should be pasted as a line" @@ -205,9 +203,7 @@ addEventListener("load", () => { assert_in_array( editingHost.innerHTML, [ - "<b>Aabc<br>defB</b>", "<b>Aabc\ndefB</b>", - "<b>A<br>abc<br>def<br>B</b>", "<b>A\nabc\ndef\nB</b>", ], "Each paragraph should be pasted as a line" @@ -247,9 +243,7 @@ addEventListener("load", () => { assert_in_array( editingHost.innerHTML, [ - "Aabc<br>defB", "Aabc\ndefB", - "A<br>abc<br>def<br>B", "A\nabc\ndef\nB", ], "Each paragraph should be pasted as a line" diff --git a/tests/wpt/tests/element-timing/cross-origin-element.sub.html b/tests/wpt/tests/element-timing/cross-origin-element.sub.html index 1052bf246d0..25a07a435e9 100644 --- a/tests/wpt/tests/element-timing/cross-origin-element.sub.html +++ b/tests/wpt/tests/element-timing/cross-origin-element.sub.html @@ -12,6 +12,7 @@ body { <script src="resources/element-timing-helpers.js"></script> <script> async_test((t) => { + const test_start = performance.now(); assert_implements(window.PerformanceElementTiming, "PerformanceElementTiming is not implemented"); let img; const pathname = 'http://{{domains[www]}}:{{ports[http][1]}}' @@ -20,9 +21,9 @@ body { t.step_func_done((entryList) => { assert_equals(entryList.getEntries().length, 1); const entry = entryList.getEntries()[0]; - checkElement(entry, pathname, 'my_image', 'the_id', 0, img); - assert_equals(entry.renderTime, 0, - 'The renderTime of a cross-origin image should be 0.'); + checkElement(entry, pathname, 'my_image', 'the_id', test_start, img); + assert_greater_than_equal(entry.renderTime, entry.loadTime, + 'The renderTime of a cross-origin image should be coarse but at least as high as loadTime'); checkRect(entry, [0, 100, 0, 100]); checkNaturalSize(entry, 100, 100); }) diff --git a/tests/wpt/tests/element-timing/image-TAO.sub.html b/tests/wpt/tests/element-timing/image-TAO.sub.html index 7b455dfa4c4..7986e69500e 100644 --- a/tests/wpt/tests/element-timing/image-TAO.sub.html +++ b/tests/wpt/tests/element-timing/image-TAO.sub.html @@ -34,11 +34,8 @@ img_count++; const tao = entry.identifier; const img = document.getElementById('id_' + tao); - if (valid_tao.includes(tao)) { + if (valid_tao.includes(tao) || invalid_tao.includes(tao)) { checkElement(entry, remote_img + tao, tao, 'id_' + tao, beforeRender, img); - } else if (invalid_tao.includes(tao)) { - assert_equals(entry.renderTime, 0, 'Entry with tao=' + tao + ' must have a renderTime of 0'); - checkElement(entry, remote_img + tao, tao, 'id_' + tao, 0, img); } else { assert_unreached('Should be in one of valid_tao OR invalid_tao'); diff --git a/tests/wpt/tests/element-timing/multiple-redirects-TAO.html b/tests/wpt/tests/element-timing/multiple-redirects-TAO.html deleted file mode 100644 index 3a45b552bea..00000000000 --- a/tests/wpt/tests/element-timing/multiple-redirects-TAO.html +++ /dev/null @@ -1,62 +0,0 @@ -<!DOCTYPE HTML> -<html> -<head> -<meta charset="utf-8" /> -<title>This test validates some Timing-Allow-Origin header usage in multiple redirects.</title> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="resources/element-timing-helpers.js"></script> -<script src="/common/get-host-info.sub.js"></script> -</head> -<body> -<script> -async_test(t => { - assert_implements(window.PerformanceElementTiming, "PerformanceElementTiming is not implemented"); - let destUrl = get_host_info().HTTP_REMOTE_ORIGIN - + '/element-timing/resources/multiple-redirects.py?'; - destUrl += 'redirect_count=2'; - // The final resource has '*' in TAO header, so will not affect the result. - destUrl += '&final_resource=/element-timing/resources/circle-tao.svg'; - destUrl += '&origin1=' + get_host_info().UNAUTHENTICATED_ORIGIN; - destUrl += '&origin2=' + get_host_info().HTTP_REMOTE_ORIGIN; - const taoCombinations = [ - {tao1: location.origin, tao2: location.origin, passes: false}, - {tao1: location.origin, tao2: get_host_info().HTTP_REMOTE_ORIGIN, passes: false}, - {tao1: location.origin, tao2: 'null', passes: true}, - {tao1: location.origin, tao2: '*', passes: true}, - {tao1: location.origin, tao2: location.origin, passes: false}, - {tao1: 'null', tao2: '*', passes: false}, - {tao1: '*', tao2: 'null', passes: true}, - ]; - function getURL(item) { - return destUrl + '&tao1=' + item.tao1 + '&tao2=' + item.tao2; - } - taoCombinations.forEach((item, index) => { - const image = document.createElement('img'); - image.src = getURL(item); - image.setAttribute('elementtiming', item.passes.toString()); - image.setAttribute('id', index); - document.body.appendChild(image); - }); - let observed = new Array(taoCombinations.length).fill(false); - let observedCount = 0; - const beforeRender = performance.now(); - new PerformanceObserver(t.step_func(entries => { - entries.getEntries().forEach(e => { - const index = parseInt(e.id); - assert_false(observed[index]); - const item = taoCombinations[index]; - const url = getURL(item); - checkElement(e, url, item.passes.toString(), e.id, item.passes ? beforeRender : 0, - document.getElementById(e.id)); - observed[index] = true; - observedCount++; - if (observedCount === taoCombinations.length) - t.done(); - }); - })).observe({entryTypes: ['element']}); -}, 'Cross-origin images with passing/failing TAO should/shouldn\'t have its renderTime set.'); -</script> -</body> -</html> - diff --git a/tests/wpt/tests/element-timing/redirects-tao-star.html b/tests/wpt/tests/element-timing/redirects-tao-star.html deleted file mode 100644 index e5067d3d6bd..00000000000 --- a/tests/wpt/tests/element-timing/redirects-tao-star.html +++ /dev/null @@ -1,53 +0,0 @@ -<!DOCTYPE HTML> -<html> -<head> -<meta charset="utf-8" /> -<title>This test validates element timing information for cross-origin redirect chain images.</title> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="resources/element-timing-helpers.js"></script> -<script src=/common/get-host-info.sub.js></script> -</head> -<body> -<script> -async_test(t => { - assert_implements(window.PerformanceElementTiming, "PerformanceElementTiming is not implemented"); - let destUrl = get_host_info().HTTP_REMOTE_ORIGIN - + '/resource-timing/resources/multi_redirect.py?'; - destUrl += 'page_origin=' + get_host_info().HTTP_ORIGIN; - destUrl += '&cross_origin=' + get_host_info().HTTP_REMOTE_ORIGIN; - destUrl += '&final_resource=' + '/element-timing/resources/circle-tao.svg'; - destUrl += '&timing_allow=1'; - destUrl += '&tao_steps='; - for (let taoSteps=0; taoSteps < 4; taoSteps++) { - const image = document.createElement('img'); - image.src = destUrl + taoSteps; - image.setAttribute('elementtiming', taoSteps); - image.setAttribute('id', 'id' + taoSteps) - document.body.appendChild(image); - } - let numObserved = 0; - let observedMap = [false, false, false, false]; - const beforeRender = performance.now(); - new PerformanceObserver(t.step_func(entries => { - entries.getEntries().forEach(entry => { - const taoSteps = entry.identifier; - assert_false(observedMap[taoSteps], 'Should observe each image once'); - observedMap[taoSteps] = true; - if (taoSteps !== '3') { - assert_equals(entry.renderTime, 0, - 'renderTime should be 0 when there is ' + taoSteps + ' tao steps'); - } - const bound = taoSteps === '3' ? beforeRender : 0; - checkElement(entry, destUrl + taoSteps, taoSteps, 'id' + taoSteps, bound, - document.getElementById(taoSteps)); - }); - numObserved += entries.getEntries().length; - if (numObserved === 4) - t.done(); - })).observe({type: 'element', buffered: true}); -}, 'Cross-origin image without TAO should not have its renderTime set, with full TAO it should.'); -</script> -</body> -</html> - diff --git a/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-fenced-frame.https.html b/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-fenced-frame.https.html index ec41fe87575..fb50be94fbc 100644 --- a/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-fenced-frame.https.html +++ b/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-fenced-frame.https.html @@ -2,13 +2,19 @@ <title>Test navigating an ancestor frame from a nested fenced frame</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="resources/utils.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-actions.js"></script> +<script src="/resources/testdriver-vendor.js"></script> <script src="/common/utils.js"></script> +<script src="/common/dispatcher/dispatcher.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="resources/utils.js"></script> <script src="resources/navigate-ancestor-helper.js"></script> <body> <script> promise_test(async t => { + // location.href = "resources/embeddee.html"; await runNavigateAncestorTest("nested fenced frame", "parent"); }, "Nested fenced frames that navigate _parent end up navigating themselves"); diff --git a/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-iframe.https.html b/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-iframe.https.html index 977eae17486..83656a28c11 100644 --- a/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-iframe.https.html +++ b/tests/wpt/tests/fenced-frame/navigate-ancestor-nested-iframe.https.html @@ -2,8 +2,13 @@ <title>Test navigating an ancestor frame from a iframe in a fenced frame</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="resources/utils.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-actions.js"></script> +<script src="/resources/testdriver-vendor.js"></script> <script src="/common/utils.js"></script> +<script src="/common/dispatcher/dispatcher.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="resources/utils.js"></script> <script src="resources/navigate-ancestor-helper.js"></script> <body> diff --git a/tests/wpt/tests/fenced-frame/navigate-ancestor-top-level-fenced-frame.https.html b/tests/wpt/tests/fenced-frame/navigate-ancestor-top-level-fenced-frame.https.html index 9907f25292c..bfce01094d5 100644 --- a/tests/wpt/tests/fenced-frame/navigate-ancestor-top-level-fenced-frame.https.html +++ b/tests/wpt/tests/fenced-frame/navigate-ancestor-top-level-fenced-frame.https.html @@ -2,8 +2,13 @@ <title>Test navigating an ancestor frame from a fenced frame</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="resources/utils.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-actions.js"></script> +<script src="/resources/testdriver-vendor.js"></script> <script src="/common/utils.js"></script> +<script src="/common/dispatcher/dispatcher.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="resources/utils.js"></script> <script src="resources/navigate-ancestor-helper.js"></script> <body> diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html deleted file mode 100644 index f12849c8ec6..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html +++ /dev/null @@ -1,17 +0,0 @@ -<!DOCTYPE html> -<script src="utils.js"></script> -<title>Nested fenced frame named navigation helper</title> -<!-- See `navigate-ancestor-from-nested-{fencedframe,iframe}.https.html` for - more documentation --> -<script> - // This is a helper file. It is the document that - // `navigate-ancestor-from-nested{fencedframe,iframe}-helper.https.html` - // explicitly navigates the "correct" ancestor frame to, for any test run by - // `navigate-ancestor-test-runner.https.html`. The test itself is responsible - // for verifying that this document loaded in the correct frame. We just - // simply report that we successfully wound up in this document, to indicate - // that we're finished. - const [navigate_ancestor_key] = parseKeylist(); - writeValueToServer(navigate_ancestor_key, - "navigate-ancestor-destination.https.html"); -</script> diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html.headers b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html.headers deleted file mode 100644 index 6247f6d6321..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-destination.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Supports-Loading-Mode: fenced-frame
\ No newline at end of file diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html deleted file mode 100644 index 74800b969f7..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html +++ /dev/null @@ -1,39 +0,0 @@ -<!DOCTYPE html> -<title>Navigate ancestor helper</title> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="utils.js"></script> - -<body> -<script> -(async () => { - // This document is loaded into a fenced frame by - // `navigate-ancestor-test-runner.https.html`. It creates a nested fenced - // frame and navigates it to `navigate-ancestor-helper.https.html`. - - // - navigate_ancestor_key: - // Sent by `navigate-ancestor-destination.https.html`. We listen to it, and - // report back to our embedder that it loaded correctly and did not navigate - // *this* frame. - // - navigate_ancestor_from_nested_key: - // Sent by us to our embedder to indicate (depending on the message) either: - // - PASS: The nested fenced frame was navigated correctly when it tried to - // navigate its ancestor (parent or top) frame - // - FAIL: When the nested fenced frame tried to navigate its ancestor - // frame, it actually navigated *this frame*, which is wrong - const [navigate_ancestor_key, navigate_ancestor_from_nested_key, - ancestor_type] = parseKeylist(); - - window.onbeforeunload = e => { - writeValueToServer(navigate_ancestor_from_nested_key, - `FAIL nested fenced frame ${ancestor_type}`); - } - - attachFencedFrame(generateURL(`navigate-ancestor-helper.https.html`, - [navigate_ancestor_key, ancestor_type])); - await nextValueFromServer(navigate_ancestor_key); - window.onbeforeunload = null; - writeValueToServer(navigate_ancestor_from_nested_key, "PASS"); -})(); -</script> -</body> diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html.headers b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html.headers deleted file mode 100644 index 6247f6d6321..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-fenced-frame.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Supports-Loading-Mode: fenced-frame
\ No newline at end of file diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html deleted file mode 100644 index 63a0cca8b4f..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html +++ /dev/null @@ -1,38 +0,0 @@ -<!DOCTYPE html> -<title>Navigate ancestor helper from nested fenced frame</title> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="utils.js"></script> - -<body> -<script> -(async () => { - // This document is loaded into a fenced frame by - // `navigate-ancestor-test-runner.https.html`. It creates a nested iframe and - // navigates it to `navigate-ancestor-helper.https.html`. - - // navigate_ancestor_from_nested_key sent by us to our embedder to - // indicate that an message was sent from the nested iframe when it failed to - // navigate the ancestor (this) frame. - const [navigate_ancestor_key, navigate_ancestor_from_nested_key, - ancestor_type] = parseKeylist(); - - // An message should be sent from the iframe. - window.addEventListener('message', (e) => { - window.onbeforeunload = null; - writeValueToServer( - navigate_ancestor_from_nested_key, - `PASS: [${ancestor_type}] ${e.data}`); - }); - - // When the iframe tries to navigate its ancestor frame, it should not - // navigate *this* frame, because the sandboxed navigation browsing context - // flag [1] must be set in fenced frame trees. - // [1] https://html.spec.whatwg.org/multipage/origin.html#sandboxed-navigation-browsing-context-flag - const iframe = document.createElement('iframe'); - iframe.src = generateURL(`navigate-ancestor-helper.https.html`, - [navigate_ancestor_key, ancestor_type]); - document.body.append(iframe); -})(); -</script> -</body> diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html.headers b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html.headers deleted file mode 100644 index 6247f6d6321..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-from-nested-iframe.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Supports-Loading-Mode: fenced-frame
\ No newline at end of file diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html deleted file mode 100644 index 71d55d4959b..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html +++ /dev/null @@ -1,29 +0,0 @@ -<!DOCTYPE html> -<title>Navigate ancestor helper</title> - -<script src="utils.js"></script> -<body> -<script> -(async () => { - // This document is loaded into either a top-level fenced frame, a nested - // fenced frame, or an iframe in a top-level fenced frame. In any case, this - // document is always the inner-most document in any test. It navigates an - // ancestor frame by clicking the anchor above via script. When this document - // is loaded in a fenced frame, the frame that should actually navigate is - // this one, since fenced frames are top-level browsing contexts. - // When this document is loaded into a top-level fenced frame or a nested - // fenced frame, we test that the right frame is navigated in - // `navigate-ancestor-test-runner.https.html`. When this document is loaded - // into an iframe in a top-level fenced frame, we test that the navigation is - // blocked due to the sandbox behavior of fenced frame trees. - const [navigate_ancestor_key, ancestor_type] = parseKeylist(); - const url = generateURL(`navigate-ancestor-destination.https.html`, - [navigate_ancestor_key]); - try { - window[ancestor_type].location = url; - } catch (e) { - window[ancestor_type].postMessage('location change failed.'); - } -})(); -</script> -</body> diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html.headers b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html.headers deleted file mode 100644 index 6247f6d6321..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Supports-Loading-Mode: fenced-frame
\ No newline at end of file diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.js b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.js index ade17c69f2c..6dfecb8bc5e 100644 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.js +++ b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-helper.js @@ -1,28 +1,70 @@ - async function runNavigateAncestorTest(test_type, ancestor_type) { - // See documentation in `resources/navigate-ancestor-test-runner.https.html`. - // For each test type here, this document opens a new auxiliary window that - // runs the actual test. The tests in some way or another, direct a frame - // *inside* a fenced frame to navigate an ancestor frame via an - // <a target="_parent|_top"></a>. We need to run the real test in a new window - // so that if that window ends up navigating unexpectedly (because the fenced - // frame can accidentally navigated its embedder, for example) we can detect - // it from ths page, which never navigates away. - const navigate_ancestor_key = token(); - const navigate_ancestor_from_nested_key = token(); + // Set up a detector to check that the top-level page doesn't navigate away. + window.onbeforeunload = + e => { + assert_unreached( + `The top-level test runner document does not navigate when a ` + + `${test_type} navigates ${ancestor_type}`); + } - const win = window.open(generateURL( - "resources/navigate-ancestor-test-runner.https.html", - [navigate_ancestor_key, navigate_ancestor_from_nested_key])); - await new Promise(resolve => { - win.onload = resolve; - }); + let fenced_frame = await attachFencedFrameContext(); + await multiClick(10, 10, fenced_frame.element); - const pagehidePromise = new Promise(resolve => { - win.onpagehide = resolve; - }); + // This is the page that the inner frames will navigate to. + const [uuid, url] = generateRemoteContextURL([]); - await win.runTest(test_type, ancestor_type); - win.close(); - await pagehidePromise; + switch (test_type) { + case 'top-level fenced frame': + // This fenced frame will attempt to navigate its parent. It should end up + // navigating *itself* since it is a top-level browsing context. Just in + // case it accidentally navigates *this* frame, we have an + // `onbeforeunload` handler that will automatically fail the test before. + await fenced_frame.execute(async (url, ancestor_type) => { + window.executor.suspend(() => { + window[ancestor_type].location = url; + }); + }, [url, ancestor_type]); + // Ensure that a navigation took place via the `window.location` call. + fenced_frame.context_id = uuid; + await fenced_frame.execute(() => {}); + break; + case 'nested fenced frame': + await fenced_frame.execute(async (url, uuid, ancestor_type) => { + const inner_fenced_frame = await attachFencedFrameContext(); + await inner_fenced_frame.execute((url, ancestor_type) => { + window.executor.suspend(() => { + window[ancestor_type].location = url; + }); + }, [url, ancestor_type]); + // Ensure that a navigation took place via the `window.location` call. + inner_fenced_frame.context_id = uuid; + await inner_fenced_frame.execute(() => {}); + }, [url, uuid, ancestor_type]); + // Check that the root fenced frame did not unload. The test will time out + // if it did. + await fenced_frame.execute(() => {}); + break; + case 'nested iframe': + // When the iframe tries to navigate its ancestor frame, it should not + // navigate *this* frame, because the sandboxed navigation browsing + // context flag must be set in fenced frame trees. See: + // https://html.spec.whatwg.org/multipage/origin.html#sandboxed-navigation-browsing-context-flag + await fenced_frame.execute(async (url, ancestor_type) => { + const inner_iframe = await attachIFrameContext(); + await inner_iframe.execute((url, ancestor_type) => { + try { + window[ancestor_type].location = url; + assert_unreached( + 'The navigation from the nested iframe should ' + + 'not be successful.'); + } catch (error) { + assert_equals(error.name, 'SecurityError'); + } + }, [url, ancestor_type]); + }, [url, ancestor_type]); + // Check that the root fenced frame did not unload. The test will time out + // if it did. + await fenced_frame.execute(() => {}); + break; + } } diff --git a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-test-runner.https.html b/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-test-runner.https.html deleted file mode 100644 index ab81bd8dea1..00000000000 --- a/tests/wpt/tests/fenced-frame/resources/navigate-ancestor-test-runner.https.html +++ /dev/null @@ -1,83 +0,0 @@ -<!DOCTYPE html> -<title>Test navigating an ancestor frame from within a fenced frame</title> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-actions.js"></script> -<script src="/resources/testdriver-vendor.js"></script> -<script src="utils.js"></script> - -<body> -<script> -// This function is called by `window.opener`, which is a same-origin window. -window.runTest = async function(test_type, ancestor_type) { - // Messages by this key are sent from - // `navigate-ancestor-destination.https.html` to let us know if the "_parent" - // navigations performed inside fenced frames landed on the right page. - // If somehow *this document* gets navigated unexpectedly, the test will fail - // given `beforeunloadPromise` below. - // For "nested" tests, this document hosts a top-level fenced frame navigated - // to `navigate-ancestor-from-nested-{fenced-frame,iframe}.https.html`, - // which itself hosts a nested fenced frame or iframe. The top-level fenced - // frame will wait for the right confirmation that the nested document has - // operated correctly, and report back to *us* that everything is OK via this - // key below. - const [navigate_ancestor_key, navigate_ancestor_from_nested_key] = - parseKeylist(); - - const beforeunloadPromise = new Promise((resolve, reject) => { - window.onbeforeunload = e => { - reject(`The top-level test runner document does not navigate when a ` + - `${test_type} navigates ${ancestor_type}`); - } - }); - - let test_promise = null; - let fenced_frame = null; - switch (test_type) { - case 'top-level fenced frame': - // This fenced frame will attempt to navigate its parent to - // `navigate-ancestor-destination.https.html`. It should end up navigating - // *itself* since it is a top-level browsing context. Just in case it - // accidentally navigates *this* frame, we have an `onbeforeunload` - // handler that will automatically fail the test before. - fenced_frame = attachFencedFrame(generateURL( - `navigate-ancestor-helper.https.html`, - [navigate_ancestor_key, ancestor_type])); - await multiClick(10, 10, fenced_frame); - test_promise = nextValueFromServer(navigate_ancestor_key); - break; - case 'nested fenced frame': - fenced_frame = attachFencedFrame(generateURL( - `navigate-ancestor-from-nested-fenced-frame.https.html`, - [navigate_ancestor_key, navigate_ancestor_from_nested_key, - ancestor_type])); - await multiClick(10, 10, fenced_frame); - test_promise = nextValueFromServer(navigate_ancestor_from_nested_key) - .then(message => { - if (message != "PASS") { - throw message; - } - }); - break; - case 'nested iframe': - fenced_frame = attachFencedFrame(generateURL( - `navigate-ancestor-from-nested-iframe.https.html`, - [navigate_ancestor_key, navigate_ancestor_from_nested_key, - ancestor_type])); - await multiClick(10, 10, fenced_frame); - test_promise = nextValueFromServer(navigate_ancestor_from_nested_key) - .then(message => { - if (message != `PASS: [${ancestor_type}] location change failed.`) { - throw message; - } - }); - - break; - } - - return Promise.race([test_promise, beforeunloadPromise]); -} -</script> - -</body> diff --git a/tests/wpt/tests/fledge/tentative/additional-bids.https.window.js b/tests/wpt/tests/fledge/tentative/additional-bids.https.window.js index 3ba0b49cbc0..9cddbaf065d 100644 --- a/tests/wpt/tests/fledge/tentative/additional-bids.https.window.js +++ b/tests/wpt/tests/fledge/tentative/additional-bids.https.window.js @@ -18,8 +18,8 @@ // which the `adAuctionHeaders=true` attribute is not specified. // - test that additional bids are not fetched using a Fetch request for which // `adAuctionHeaders: true` is not specified. -// - test that an additional bid with an incorrect auction nonce is not used -// included in an auction. Same for seller and top-level seller. +// - test that an additional bid with an incorrect seller and / or top-level +// seller is not used included in an auction. // - lots of tests for different types of malformed additional bids, e.g. // missing fields, malformed signature, invalid currency code, // missing joining origin for multiple negative interest groups, etc. @@ -149,6 +149,258 @@ subsetTest(promise_test, async test => { /*winningAdditionalBidId=*/'planes'); }, 'two valid additional bids from two distinct Fetch requests'); +// Single-seller auction with a single buyer who places a single additional +// bid with the wrong auctionNonce in the bid, causing the bid to fail. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const auctionNonceInBid = crypto.randomUUID(); + const seller = SINGLE_SELLER_AUCTION_SELLER; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99); + additionalBidHelper.setBidAuctionNonceOverride( + additionalBid, auctionNonceInBid); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single valid additional bid with wrong auctionNonce in bid'); + +// Single-seller auction with a single buyer who places a single additional +// bid with no auctionNonce in the bid, causing the bid to fail. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const seller = SINGLE_SELLER_AUCTION_SELLER; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single valid additional bid with no auctionNonce in bid'); + +// Single-seller auction with a single buyer who places a single additional +// bid with auctionNonce and bidNonce in the bid (but no seller nonce), causing +// the bid to fail. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const bidNonce = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce); + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides = { + bidNonce: bidNonce, + }; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single valid additional bid with auctionNonce and bidNonce in bid (but no seller nonce)'); + +// Single-seller auction with a single buyer who places a single additional +// bid that uses seller nonce / bidNonce. As the only bid, this wins. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const bidNonce = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce); + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides = { + bidNonce: bidNonce, + }; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid); + + await runAdditionalBidTest( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0, + /*winningAdditionalBidId=*/'horses'); +}, 'single valid additional bid with seller nonce'); + +// Single-seller auction with a single buyer who places a single additional bid +// that uses seller nonce, but no bidNonce. Since the bidNonce is missing, there +// is no winner. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const seller = SINGLE_SELLER_AUCTION_SELLER; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single additional bid with seller nonce with no bidNonce'); + +// Single-seller auction with a single buyer who places a single additional bid +// that uses seller nonce, but no bidNonce or auctionNonce. Since the bidNonce +// is missing, there is no winner. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const seller = SINGLE_SELLER_AUCTION_SELLER; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single additional bid with seller nonce with no bidNonce or auctionNonce'); + +// Single-seller auction with a single buyer who places a single additional +// bid that uses seller nonce / bidNonce. Since the bidNonce is invalid there is +// no winner. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + // Intentionally use the wrong bidNonce, base64(sha256("incorrect")). + const bidNonce = 'ID01Nr1irTOscLfqPU9eELbVLr0Mt1goQaBTrrtxhqM='; + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides = { + bidNonce: bidNonce, + }; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single invalid additional bid with seller nonce'); + +// Single-seller auction with a two buyers competing with additional bids, using +// seller nonce. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce1 = crypto.randomUUID(); + const sellerNonce2 = crypto.randomUUID(); + const bidNonce1 = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce1); + const bidNonce2 = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce2); + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides1 = { + bidNonce: bidNonce1, + }; + const additionalBidOverrides2 = { + bidNonce: bidNonce2, + }; + + const buyer1 = OTHER_ORIGIN1; + const additionalBid1 = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer1, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides1); + additionalBidHelper.setSellerNonce(additionalBid1, sellerNonce1); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid1); + + const buyer2 = OTHER_ORIGIN2; + const additionalBid2 = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer2, 'planes', 2.99, + /*additionalBidOverrides=*/ additionalBidOverrides2); + additionalBidHelper.setSellerNonce(additionalBid2, sellerNonce2); + additionalBidHelper.removeAuctionNonceFromBid(additionalBid2); + + await runAdditionalBidTest( + test, uuid, [buyer1, buyer2], auctionNonce, + additionalBidHelper.fetchAdditionalBids( + seller, [additionalBid1, additionalBid2]), + /*highestScoringOtherBid=*/1.99, + /*winningAdditionalBidId=*/'planes'); +}, 'two valid additional bids using seller nonce'); + +// Single-seller auction with a single buyer who places a single additional +// bid that uses seller nonce / bidNonce, but also auctionNonce in the bid. As +// exactly one of bidNonce / auctionNonce is allowed in the bid, this fails. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const bidNonce = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce); + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides = { + bidNonce: bidNonce, + }; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + // Don't remove the auctionNonce from the bid. + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single additional bid with seller nonce, but also with auctionNonce in bid'); + +// Single-seller auction with a single buyer who places a single additional +// bid with auctionNonce and bidNonce in the bid (with seller nonce), causing +// the bid to fail. +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + const auctionNonce = await navigator.createAuctionNonce(); + const sellerNonce = crypto.randomUUID(); + const bidNonce = + await additionalBidHelper.computeBidNonce(auctionNonce, sellerNonce); + const seller = SINGLE_SELLER_AUCTION_SELLER; + const additionalBidOverrides = { + bidNonce: bidNonce, + }; + + const buyer = OTHER_ORIGIN1; + const additionalBid = additionalBidHelper.createAdditionalBid( + uuid, auctionNonce, seller, buyer, 'horses', 1.99, + /*additionalBidOverrides=*/ additionalBidOverrides); + additionalBidHelper.setSellerNonce(additionalBid, sellerNonce); + + await runAdditionalBidTestNoWinner( + test, uuid, [buyer], auctionNonce, + additionalBidHelper.fetchAdditionalBids(seller, [additionalBid]), + /*highestScoringOtherBid=*/0); +}, 'single valid additional bid with auctionNonce and bidNonce in bid (with seller nonce)'); + // Single-seller auction with a single additional bid. Because this additional // bid is filtered by negative targeting, this auction has no winner. subsetTest(promise_test, async test => { diff --git a/tests/wpt/tests/fledge/tentative/resources/additional-bids.py b/tests/wpt/tests/fledge/tentative/resources/additional-bids.py index 721909a0458..6c51d38a464 100644 --- a/tests/wpt/tests/fledge/tentative/resources/additional-bids.py +++ b/tests/wpt/tests/fledge/tentative/resources/additional-bids.py @@ -89,15 +89,28 @@ def main(request, response): # Each additional bid may have associated testMetadata. Remove this from # the additional bid and use it to adjust the behavior of this handler. test_metadata = additional_bid.pop("testMetadata", {}) - auction_nonce = additional_bid.get("auctionNonce", None) + seller_nonce = test_metadata.get("sellerNonce", None) + remove_auction_nonce_from_bid = test_metadata.get("removeAuctionNonceFromBid", False) + bid_auction_nonce_override = test_metadata.get("bidAuctionNonceOverride", None) + if remove_auction_nonce_from_bid: + auction_nonce = additional_bid.pop("auctionNonce", None) + else: + auction_nonce = additional_bid.get("auctionNonce", None) + if bid_auction_nonce_override: + additional_bid["auctionNonce"] = bid_auction_nonce_override if not auction_nonce: raise BadRequestError("Additional bid missing required 'auctionNonce' field") signed_additional_bid = _sign_additional_bid( json.dumps(additional_bid), test_metadata.get("secretKeysForValidSignatures", []), test_metadata.get("secretKeysForInvalidSignatures", [])) - additional_bid_header_value = (auction_nonce.encode("utf-8") + b":" + - base64.b64encode(signed_additional_bid.encode("utf-8"))) + if seller_nonce: + additional_bid_header_value = (auction_nonce.encode("utf-8") + b":" + + seller_nonce.encode("utf-8") + b":" + + base64.b64encode(signed_additional_bid.encode("utf-8"))) + else: + additional_bid_header_value = (auction_nonce.encode("utf-8") + b":" + + base64.b64encode(signed_additional_bid.encode("utf-8"))) response.headers.append(b"Ad-Auction-Additional-Bid", additional_bid_header_value) response.status = (200, b"OK") diff --git a/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js b/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js index 148613eef8d..6f16e5e1e8c 100644 --- a/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js +++ b/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js @@ -544,8 +544,10 @@ async function runReportTest(test, uuid, codeToInsert, expectedReportURLs, // - test/uuid: the test object and uuid from the test case (see generateUuid) // - buyers: array of strings, each a domain for a buyer participating in this // auction -// - actionNonce: string, the auction nonce for this auction, typically +// - auctionNonce: string, the auction nonce for this auction, typically // retrieved from a prior call to navigator.createAuctionNonce +// - additionalBidsPromise: promise resolving to undefined, to be resolved when +// the additional bids have been retrieved with fetch(). // - highestScoringOtherBid: the amount of the second-highest bid, // or zero if there's no second-highest bid // - winningAdditionalBidId: the label of the winning bid @@ -567,6 +569,25 @@ async function runAdditionalBidTest(test, uuid, buyers, auctionNonce, createBidderReportURL(uuid, winningAdditionalBidId)]); } +// Similar to runAdditionalBidTest(), but expects no winner. It takes the +// following arguments: +// - test/uuid: the test object and uuid from the test case (see generateUuid) +// - buyers: array of strings, each a domain for a buyer participating in this +// auction +// - auctionNonce: string, the auction nonce for this auction, typically +// retrieved from a prior call to navigator.createAuctionNonce +// - additionalBidsPromise: promise resolving to undefined, to be resolved when +// the additional bids have been retrieved with fetch(). +async function runAdditionalBidTestNoWinner( + test, uuid, buyers, auctionNonce, additionalBidsPromise) { + await runBasicFledgeTestExpectingNoWinner(test, uuid, { + interestGroupBuyers: buyers, + auctionNonce: auctionNonce, + additionalBids: additionalBidsPromise, + decisionLogicURL: createDecisionScriptURL(uuid) + }); +} + // Runs "script" in "child_window" via an eval call. The "child_window" must // have been created by calling "createFrame()" below. "param" is passed to the // context "script" is run in, so can be used to pass objects that @@ -812,6 +833,38 @@ let additionalBidHelper = function() { secretKeysForInvalidSignatures = secretKeys; } + // Sets the seller nonce that will be used in the server response. + function setSellerNonce(additionalBid, sellerNonce) { + getAndMaybeInitializeTestMetadata(additionalBid). + sellerNonce = sellerNonce; + } + + // Instructs the server to remove the auctionNonce from the bid, and only + // include it in the header. + function removeAuctionNonceFromBid(additionalBid) { + getAndMaybeInitializeTestMetadata(additionalBid). + removeAuctionNonceFromBid = true; + } + + // Instructs the server to use `bidAuctionNonceOverride` as the `auctionNonce` + // in the bid, even it doesn't match the auctionNonce in the header. Overrides + // the behavior of removeAuctionNonceFromBid(). + function setBidAuctionNonceOverride(additionalBid, bidAuctionNonceOverride) { + getAndMaybeInitializeTestMetadata(additionalBid). + bidAuctionNonceOverride = bidAuctionNonceOverride; + } + + // Takes the auctionNonce and sellerNonce as strings, and combines them with + // SHA256, returning the result as a base64 string. + async function computeBidNonce(auctionNonce, sellerNonce) { + // Compute the bidNonce as hashed bytes. + const combined_utf8 = new TextEncoder().encode(auctionNonce + sellerNonce); + const hashed = await crypto.subtle.digest('SHA-256',combined_utf8); + + // Convert the hashed bytes to base64. + return btoa(String.fromCharCode(...new Uint8Array(hashed))); + } + // Adds a single negative interest group to an additional bid, as described at: // https://github.com/WICG/turtledove/blob/main/FLEDGE.md#622-how-additional-bids-specify-their-negative-interest-groups function addNegativeInterestGroup(additionalBid, negativeInterestGroup) { @@ -846,6 +899,10 @@ let additionalBidHelper = function() { createAdditionalBid: createAdditionalBid, signWithSecretKeys: signWithSecretKeys, incorrectlySignWithSecretKeys: incorrectlySignWithSecretKeys, + setSellerNonce: setSellerNonce, + removeAuctionNonceFromBid: removeAuctionNonceFromBid, + setBidAuctionNonceOverride: setBidAuctionNonceOverride, + computeBidNonce: computeBidNonce, addNegativeInterestGroup: addNegativeInterestGroup, addNegativeInterestGroups: addNegativeInterestGroups, fetchAdditionalBids: fetchAdditionalBids diff --git a/tests/wpt/tests/fledge/tentative/server-response.https.window.js b/tests/wpt/tests/fledge/tentative/server-response.https.window.js index 1d272fb59a8..7bbe4bbf008 100644 --- a/tests/wpt/tests/fledge/tentative/server-response.https.window.js +++ b/tests/wpt/tests/fledge/tentative/server-response.https.window.js @@ -19,6 +19,7 @@ // META: variant=?41-44 // META: variant=?45-48 // META: variant=?49-52 +// META: variant=?53-56 // These tests focus on the serverResponse field in AuctionConfig, e.g. // auctions involving bidding and auction services. @@ -1029,6 +1030,32 @@ subsetTest(promise_test, async test => { }); }, 'Hybrid B&A auction --- beacon reporting'); +///////////////////////////////////////////////////////////////////////////// +// updateIfOlderThanMs tests +// +// NOTE: Due to the lack of mock time in wpt, these test just exercise the code +// paths and ensure that no crash occurs -- they don't otherwise verify +// behavior. +///////////////////////////////////////////////////////////////////////////// + +subsetTest(promise_test, async test => { + await testWithMutatedServerResponse(test, /*expectSuccess=*/ true, msg => { + msg.updateGroups = { + [window.location.origin]: [ + {index: 2048, updateIfOlderThanMs: 1000}]}; + }); +}, 'Basic B&A auction - updateIfOlderThanMs - invalid index'); + + +subsetTest(promise_test, async test => { + await testWithMutatedServerResponse(test, /*expectSuccess=*/ true, msg => { + msg.updateGroups = { + [window.location.origin]: [ + {index: 0, updateIfOlderThanMs: 1000}, + {index: 1, updateIfOlderThanMs: 10000}]}; + }); +}, 'Basic B&A auction - updateIfOlderThanMs'); + /* Some things that are not currently tested that probably should be; this is not exhaustive, merely to keep track of things that come to mind as tests are written: diff --git a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-middle.sub.html b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-middle.sub.html index c5a0d60a71d..da5164e4252 100644 --- a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-middle.sub.html +++ b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-middle.sub.html @@ -2,7 +2,7 @@ <meta charset="utf-8"> <title>Focus test middle document</title> <h1>Middle</h1><br> -<iframe src="https://{{hosts[][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-inner.html"></iframe> +<iframe allow="focus-without-user-activation" src="https://{{hosts[][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-inner.html"></iframe> <script> let middlelog = "middlelog:"; diff --git a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-different.sub.html b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-different.sub.html index 2cddcf233db..bbbb50d4e45 100644 --- a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-different.sub.html +++ b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-different.sub.html @@ -1,7 +1,7 @@ <!doctype html> <meta charset="utf-8"> <title>Focus test outer document</title> -<iframe src="https://{{hosts[alt][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-middle.sub.html"></iframe> +<iframe allow="focus-without-user-activation" src="https://{{hosts[alt][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-middle.sub.html"></iframe> <script> let outerlog = "outerlog:"; diff --git a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-same.sub.html b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-same.sub.html index 4833e94bc94..b3ce29e20d2 100644 --- a/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-same.sub.html +++ b/tests/wpt/tests/focus/support/activeelement-after-calling-window-focus-outer-same.sub.html @@ -1,7 +1,7 @@ <!doctype html> <meta charset="utf-8"> <title>Focus test outer document</title> -<iframe src="https://{{hosts[][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-middle.sub.html"></iframe> +<iframe allow="focus-without-user-activation" src="https://{{hosts[][www]}}:{{ports[https][0]}}/focus/support/activeelement-after-calling-window-focus-middle.sub.html"></iframe> <script> let outerlog = "outerlog:"; diff --git a/tests/wpt/tests/focus/support/activeelement-after-focusing-different-site-iframe-outer-contentwindow.sub.html b/tests/wpt/tests/focus/support/activeelement-after-focusing-different-site-iframe-outer-contentwindow.sub.html index fd66cbaa55c..4a9a9a110d9 100644 --- a/tests/wpt/tests/focus/support/activeelement-after-focusing-different-site-iframe-outer-contentwindow.sub.html +++ b/tests/wpt/tests/focus/support/activeelement-after-focusing-different-site-iframe-outer-contentwindow.sub.html @@ -26,4 +26,4 @@ window.onload = function() { }, 1500); } </script> -<iframe src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/activeelement-after-focusing-different-site-iframe-inner-contentwindow.html"></iframe> +<iframe allow="focus-without-user-activation" src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/activeelement-after-focusing-different-site-iframe-inner-contentwindow.html"></iframe> diff --git a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html index e3a5facf82e..c59e3ec703f 100644 --- a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html +++ b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html @@ -1,7 +1,7 @@ <!doctype html> <meta charset="utf-8"> <title>iframe.contentWindow.focus() with different-site intermediate frame middle</title> -<iframe src="http://{{hosts[][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-inner.html"></iframe> +<iframe allow="focus-without-user-activation" src="http://{{hosts[][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-inner.html"></iframe> <script> let iframe = document.getElementsByTagName("iframe")[0]; let log = ""; diff --git a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-outer.sub.html b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-outer.sub.html index 9dbb6af9d9a..cc5412dfb48 100644 --- a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-outer.sub.html +++ b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-outer.sub.html @@ -19,4 +19,4 @@ window.onload = function() { }, 3000); } </script> -<iframe src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html"></iframe> +<iframe allow="focus-without-user-activation" src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-different-site-intermediate-frame-middle.sub.html"></iframe> diff --git a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html index 747e1467466..a94a03101c5 100644 --- a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html +++ b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html @@ -1,7 +1,7 @@ <!doctype html> <meta charset="utf-8"> <title>iframe.contentWindow.focus() with same-as-top intermediate frame middle</title> -<iframe src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-inner.html"></iframe> +<iframe allow="focus-without-user-activation" src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-inner.html"></iframe> <script> let iframe = document.getElementsByTagName("iframe")[0]; let log = ""; diff --git a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-outer.html b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-outer.html index 71cfe78c0d7..bd96a9680ce 100644 --- a/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-outer.html +++ b/tests/wpt/tests/focus/support/iframe-contentwindow-focus-with-same-as-top-intermediate-frame-outer.html @@ -19,4 +19,4 @@ window.onload = function() { }, 2000); } </script> -<iframe src="iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html"></iframe> +<iframe allow="focus-without-user-activation" src="iframe-contentwindow-focus-with-same-as-top-intermediate-frame-middle.sub.html"></iframe> diff --git a/tests/wpt/tests/focus/support/iframe-focus-with-different-site-intermediate-frame-outer.sub.html b/tests/wpt/tests/focus/support/iframe-focus-with-different-site-intermediate-frame-outer.sub.html index 5e80410206d..299f3787b3a 100644 --- a/tests/wpt/tests/focus/support/iframe-focus-with-different-site-intermediate-frame-outer.sub.html +++ b/tests/wpt/tests/focus/support/iframe-focus-with-different-site-intermediate-frame-outer.sub.html @@ -19,4 +19,4 @@ window.onload = function() { }, 3000); } </script> -<iframe src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-focus-with-different-site-intermediate-frame-middle.sub.html"></iframe> +<iframe allow="focus-without-user-activation" src="http://{{hosts[alt][www]}}:{{ports[http][0]}}/focus/support/iframe-focus-with-different-site-intermediate-frame-middle.sub.html"></iframe> diff --git a/tests/wpt/tests/fullscreen/crashtests/chrome-1312699.html b/tests/wpt/tests/fullscreen/crashtests/chrome-1312699.html deleted file mode 100644 index c783b0d9cc9..00000000000 --- a/tests/wpt/tests/fullscreen/crashtests/chrome-1312699.html +++ /dev/null @@ -1,21 +0,0 @@ -<!doctype html> -<html class="reftest-wait"> -<link rel="help" href="https://crbug.com/1312699"> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-vendor.js"></script> -<video></video> -<script> - async function crash() { - let video = document.querySelector("video"); - await video.requestFullscreen(); - video.width = null; - document.documentElement.classList.remove("reftest-wait"); - } - document.addEventListener("click", () => crash(), false); - - requestAnimationFrame(() => requestAnimationFrame(() => { - test_driver.click(document.body); - })); -</script> -</body> -</html> diff --git a/tests/wpt/tests/fullscreen/crashtests/content-visibility-crash.html b/tests/wpt/tests/fullscreen/crashtests/content-visibility-crash.html deleted file mode 100644 index 63111d03e3f..00000000000 --- a/tests/wpt/tests/fullscreen/crashtests/content-visibility-crash.html +++ /dev/null @@ -1,31 +0,0 @@ -<!DOCTYPE html> -<html class=test-wait> -<link rel=author href="mailto:m.cooolie@gmail.com"> -<link rel=author href="mailto:jarhar@chromium.org"> -<link rel=help href="https://bugs.chromium.org/p/chromium/issues/detail?id=1338135"> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-vendor.js"></script> -<body> -<script> -async function crash() { - const col = document.createElement("col"); - document.body.appendChild(col); - - let fullscreenPromise = null; - await test_driver.bless('open fullscreen', () => { - fullscreenPromise = col.requestFullscreen({navigationUI: 'hide'}); - }); - await fullscreenPromise; - - const a = document.createElement("a"); - document.body.appendChild(a); - - document.body.style.all = 'unset'; - document.body.style.contentVisibility = 'hidden'; - - a.offsetParent; - - document.documentElement.classList.remove('test-wait'); -} -crash(); -</script> diff --git a/tests/wpt/tests/fullscreen/rendering/backdrop-green-ref.html b/tests/wpt/tests/fullscreen/rendering/backdrop-green-ref.html deleted file mode 100644 index 3126fe19426..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/backdrop-green-ref.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<body style="background: green"></body> diff --git a/tests/wpt/tests/fullscreen/rendering/backdrop-iframe.html b/tests/wpt/tests/fullscreen/rendering/backdrop-iframe.html deleted file mode 100644 index dbdf9c841a4..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/backdrop-iframe.html +++ /dev/null @@ -1,22 +0,0 @@ -<!DOCTYPE html> -<html class=reftest-wait> -<title>::backdrop for a fullscreen iframe element</title> -<link rel=match href="backdrop-green-ref.html"> -<link rel=help href="https://github.com/w3c/csswg-drafts/issues/6939"> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-vendor.js"></script> - -<style> -iframe::backdrop { - background: green; -} -</style> -<iframe></iframe> -<script> -document.addEventListener('fullscreenchange', () => { - document.documentElement.classList.remove('reftest-wait'); -}); -test_driver.bless('fullscreen', () => { - document.querySelector('iframe').requestFullscreen(); -}); -</script> diff --git a/tests/wpt/tests/fullscreen/rendering/backdrop-inherit.html b/tests/wpt/tests/fullscreen/rendering/backdrop-inherit.html deleted file mode 100644 index 3a38dc4c815..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/backdrop-inherit.html +++ /dev/null @@ -1,27 +0,0 @@ -<!DOCTYPE html> -<html class=reftest-wait> -<title>::backdrop inherits style from the fullscreen element</title> -<link rel=match href="backdrop-green-ref.html"> -<link rel=help href="https://github.com/whatwg/fullscreen/issues/124"> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-vendor.js"></script> -<style> -body { - --bg: red; -} -div { - --bg: green; -} -div::backdrop { - background: var(--bg); -} -</style> -<div></div> -<script> -document.addEventListener('fullscreenchange', () => { - document.documentElement.classList.remove('reftest-wait'); -}); -test_driver.bless('fullscreen', () => { - document.querySelector('div').requestFullscreen(); -}); -</script> diff --git a/tests/wpt/tests/fullscreen/rendering/backdrop-object-ref.html b/tests/wpt/tests/fullscreen/rendering/backdrop-object-ref.html deleted file mode 100644 index 6c7071a727d..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/backdrop-object-ref.html +++ /dev/null @@ -1,14 +0,0 @@ -<!DOCTYPE html> -<style> -body { - background: blue; - margin: 0; -} -div { - position: fixed; - width: 100px; - height: 100px; - background: green; -} -</style> -<div></div> diff --git a/tests/wpt/tests/fullscreen/rendering/backdrop-object.html b/tests/wpt/tests/fullscreen/rendering/backdrop-object.html deleted file mode 100644 index be285b76124..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/backdrop-object.html +++ /dev/null @@ -1,23 +0,0 @@ -<!DOCTYPE html> -<html class=reftest-wait> -<title>::backdrop for a fullscreen object element</title> -<link rel=match href="backdrop-object-ref.html"> -<link rel=help href="https://github.com/w3c/csswg-drafts/issues/6939"> -<script src="/resources/testdriver.js"></script> -<script src="/resources/testdriver-vendor.js"></script> - -<style> -object::backdrop { - background: blue; -} -</style> -<object width="200" type="image/svg+xml" data="../../images/100px-green-rect.svg"></object> -<script> -const object = document.querySelector("object"); -Promise.all([ - new Promise((resolve, reject) => document.addEventListener("fullscreenchange", resolve)), - new Promise((resolve, reject) => object.addEventListener("load", resolve)) -]).then(() => document.documentElement.classList.remove('reftest-wait')); - -test_driver.bless('fullscreen', () => object.requestFullscreen()); -</script> diff --git a/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page-ref.html b/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page-ref.html deleted file mode 100644 index b2bf13557a2..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page-ref.html +++ /dev/null @@ -1,18 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <style> - html, body { - width: 100%; - height: 100%; - margin: 0; - padding: 0; - } - - body { - background-color: green; - } - </style> -</head> -<body></body> -</html> diff --git a/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page.html b/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page.html deleted file mode 100644 index e2a6217346d..00000000000 --- a/tests/wpt/tests/fullscreen/rendering/fullscreen-root-fills-page.html +++ /dev/null @@ -1,47 +0,0 @@ -<!DOCTYPE html> -<html class="reftest-wait"> -<head> - <link rel="author" title="Tim Nguyen" href="https://github.com/nt1m"> - <link rel="match" href="fullscreen-root-fills-page-ref.html"> - <style> - html { - background-color: red; - height: 100%; - overflow: hidden; - - /* These should be no-op */ - top: 200px; - left: 200px; - right: 200px; - bottom: 200px; - } - - html, body { - margin: 0; - padding: 0; - } - - body, #cover { - height: 100%; - width: 100%; - } - - #cover { - background-color: green; - } - </style> -</head> - -<body> - <div id="cover"></div> - <script src="/resources/testdriver.js"></script> - <script src="/resources/testdriver-vendor.js"></script> - <script> - document.addEventListener("fullscreenchange", () => { - document.documentElement.classList.remove("reftest-wait"); - }); - test_driver.bless("fullscreen") - .then(() => document.documentElement.requestFullscreen()) - </script> -</body> -</html> diff --git a/tests/wpt/tests/generic-sensor/generic-sensor-iframe-tests.sub.js b/tests/wpt/tests/generic-sensor/generic-sensor-iframe-tests.sub.js index ed3415e66ec..277d5d0ea9b 100644 --- a/tests/wpt/tests/generic-sensor/generic-sensor-iframe-tests.sub.js +++ b/tests/wpt/tests/generic-sensor/generic-sensor-iframe-tests.sub.js @@ -96,7 +96,7 @@ function run_generic_sensor_iframe_tests(sensorData, readingData) { // Create cross-origin iframe and a sensor inside it. const iframe = document.createElement('iframe'); - iframe.allow = featurePolicies.join(';') + ';'; + iframe.allow = featurePolicies.join(';') + '; focus-without-user-activation;'; iframe.src = 'https://{{domains[www1]}}:{{ports[https][0]}}/generic-sensor/resources/iframe_sensor_handler.html'; const iframeLoadWatcher = new EventWatcher(t, iframe, 'load'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.html index 8e6b95ae221..acf9892ec37 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -51,7 +51,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -61,10 +61,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -83,7 +83,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -93,10 +93,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -115,7 +115,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -125,10 +125,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -147,7 +147,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -157,10 +157,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -179,7 +179,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -189,10 +189,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -211,7 +211,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -221,10 +221,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -243,7 +243,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -253,10 +253,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -275,7 +275,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -285,10 +285,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -307,7 +307,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -317,10 +317,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -339,7 +339,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -349,10 +349,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -371,7 +371,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -381,10 +381,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -403,7 +403,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -413,10 +413,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -435,7 +435,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -445,10 +445,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -467,7 +467,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -477,10 +477,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -499,7 +499,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -509,10 +509,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -531,7 +531,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -541,10 +541,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -563,7 +563,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -573,10 +573,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -595,7 +595,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -605,10 +605,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -627,7 +627,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -637,10 +637,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -659,7 +659,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -669,10 +669,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -691,7 +691,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -701,10 +701,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -723,7 +723,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -733,10 +733,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -755,7 +755,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -765,10 +765,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -787,7 +787,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -797,10 +797,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -819,7 +819,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -829,10 +829,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.html index 5dca89e3c12..be37d492581 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -48,7 +48,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -58,10 +58,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -77,7 +77,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -87,10 +87,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -106,7 +106,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -116,10 +116,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -135,7 +135,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -145,10 +145,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -164,7 +164,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -174,10 +174,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -193,7 +193,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -203,10 +203,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -222,7 +222,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -232,10 +232,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -251,7 +251,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -261,10 +261,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -280,7 +280,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -290,10 +290,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -309,7 +309,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -319,10 +319,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -338,7 +338,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -348,10 +348,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -367,7 +367,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -377,10 +377,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -396,7 +396,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -406,10 +406,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -425,7 +425,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -435,10 +435,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -454,7 +454,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -464,10 +464,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -483,7 +483,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -493,10 +493,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -512,7 +512,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -522,10 +522,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -541,7 +541,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -551,10 +551,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -570,7 +570,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -580,10 +580,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -599,7 +599,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -609,10 +609,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -628,7 +628,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -638,10 +638,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -657,7 +657,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -667,10 +667,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -686,7 +686,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -696,10 +696,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -715,7 +715,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -725,10 +725,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -744,7 +744,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -754,10 +754,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.html index 6b3c4c6a589..7e68be70eaa 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -52,7 +52,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -62,10 +62,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -85,7 +85,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -95,10 +95,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -118,7 +118,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -128,10 +128,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -151,7 +151,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -161,10 +161,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -184,7 +184,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -194,10 +194,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -217,7 +217,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -227,10 +227,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -250,7 +250,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -260,10 +260,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -283,7 +283,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -293,10 +293,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -316,7 +316,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -326,10 +326,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -349,7 +349,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -359,10 +359,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -382,7 +382,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -392,10 +392,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -415,7 +415,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -425,10 +425,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -448,7 +448,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -458,10 +458,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -481,7 +481,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -491,10 +491,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -514,7 +514,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -524,10 +524,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -547,7 +547,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -557,10 +557,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -580,7 +580,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -590,10 +590,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -613,7 +613,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -623,10 +623,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -646,7 +646,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -656,10 +656,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -679,7 +679,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -689,10 +689,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -712,7 +712,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -722,10 +722,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -745,7 +745,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -755,10 +755,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -778,7 +778,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -788,10 +788,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -811,7 +811,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -821,10 +821,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -844,7 +844,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -854,10 +854,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.no_shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.html index f6872b22127..918debe2e40 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -53,7 +53,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -63,12 +63,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -87,7 +87,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -97,12 +97,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -121,7 +121,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -131,12 +131,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -155,7 +155,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -165,12 +165,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -189,7 +189,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -199,12 +199,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -223,7 +223,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -233,12 +233,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -257,7 +257,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -267,12 +267,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -291,7 +291,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -301,12 +301,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -325,7 +325,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -335,12 +335,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -359,7 +359,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -369,12 +369,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -393,7 +393,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -403,12 +403,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -427,7 +427,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -437,12 +437,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -461,7 +461,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -471,12 +471,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -495,7 +495,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -505,12 +505,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -529,7 +529,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -539,12 +539,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -563,7 +563,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -573,12 +573,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -597,7 +597,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -607,12 +607,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -631,7 +631,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -641,12 +641,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -665,7 +665,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -675,12 +675,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -699,7 +699,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -709,12 +709,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -733,7 +733,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -743,12 +743,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -767,7 +767,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -777,12 +777,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -801,7 +801,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -811,12 +811,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -835,7 +835,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -845,12 +845,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -869,7 +869,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -879,12 +879,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.html index 1c68c0e4540..363f9ed454e 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -50,7 +50,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -60,12 +60,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -81,7 +81,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -91,12 +91,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -112,7 +112,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -122,12 +122,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -143,7 +143,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -153,12 +153,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -174,7 +174,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -184,12 +184,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -205,7 +205,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -215,12 +215,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -236,7 +236,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -246,12 +246,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -267,7 +267,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -277,12 +277,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -298,7 +298,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -308,12 +308,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -329,7 +329,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -339,12 +339,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -360,7 +360,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -370,12 +370,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -391,7 +391,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -401,12 +401,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -422,7 +422,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -432,12 +432,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -453,7 +453,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -463,12 +463,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -484,7 +484,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -494,12 +494,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -515,7 +515,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -525,12 +525,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -546,7 +546,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -556,12 +556,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -577,7 +577,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -587,12 +587,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -608,7 +608,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -618,12 +618,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -639,7 +639,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -649,12 +649,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -670,7 +670,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -680,12 +680,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -701,7 +701,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -711,12 +711,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -732,7 +732,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -742,12 +742,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -763,7 +763,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -773,12 +773,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -794,7 +794,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -804,12 +804,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.html index 1e3f14fb9a3..18ea3a473d8 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -54,7 +54,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -64,12 +64,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -89,7 +89,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -99,12 +99,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -124,7 +124,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -134,12 +134,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -159,7 +159,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -169,12 +169,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -194,7 +194,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -204,12 +204,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -229,7 +229,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -239,12 +239,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -264,7 +264,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -274,12 +274,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -299,7 +299,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -309,12 +309,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -334,7 +334,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -344,12 +344,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -369,7 +369,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -379,12 +379,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -404,7 +404,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -414,12 +414,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -439,7 +439,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -449,12 +449,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -474,7 +474,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -484,12 +484,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -509,7 +509,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -519,12 +519,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -544,7 +544,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -554,12 +554,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -579,7 +579,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -589,12 +589,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -614,7 +614,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -624,12 +624,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -649,7 +649,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -659,12 +659,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -684,7 +684,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -694,12 +694,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -719,7 +719,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -729,12 +729,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -754,7 +754,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -764,12 +764,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -789,7 +789,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -799,12 +799,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -824,7 +824,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -834,12 +834,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -859,7 +859,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -869,12 +869,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -894,7 +894,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -904,12 +904,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.filter.shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html index 31e0fba7918..cd9ad95b92c 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -51,7 +51,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -64,7 +64,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -83,7 +83,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -96,7 +96,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -115,7 +115,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -128,7 +128,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -147,7 +147,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -160,7 +160,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -179,7 +179,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -192,7 +192,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -211,7 +211,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -224,7 +224,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -243,7 +243,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -256,7 +256,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -275,7 +275,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -288,7 +288,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -307,7 +307,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -320,7 +320,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -339,7 +339,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -352,7 +352,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -371,7 +371,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -384,7 +384,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -403,7 +403,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -416,7 +416,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -435,7 +435,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -448,7 +448,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -467,7 +467,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -480,7 +480,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -499,7 +499,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -512,7 +512,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -531,7 +531,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -544,7 +544,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -563,7 +563,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -576,7 +576,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -595,7 +595,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -608,7 +608,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -627,7 +627,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -640,7 +640,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -659,7 +659,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -672,7 +672,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -691,7 +691,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -704,7 +704,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -723,7 +723,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -736,7 +736,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -755,7 +755,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -768,7 +768,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -787,7 +787,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -800,7 +800,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -819,7 +819,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -832,7 +832,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html index e14c336868e..f007fd3fc7e 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -48,7 +48,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -61,7 +61,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -77,7 +77,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -90,7 +90,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -106,7 +106,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -119,7 +119,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -135,7 +135,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -148,7 +148,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -164,7 +164,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -177,7 +177,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -193,7 +193,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -206,7 +206,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -222,7 +222,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -235,7 +235,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -251,7 +251,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -264,7 +264,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -280,7 +280,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -293,7 +293,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -309,7 +309,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -322,7 +322,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -338,7 +338,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -351,7 +351,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -367,7 +367,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -380,7 +380,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -396,7 +396,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -409,7 +409,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -425,7 +425,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -438,7 +438,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -454,7 +454,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -467,7 +467,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -483,7 +483,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -496,7 +496,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -512,7 +512,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -525,7 +525,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -541,7 +541,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -554,7 +554,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -570,7 +570,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -583,7 +583,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -599,7 +599,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -612,7 +612,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -628,7 +628,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -641,7 +641,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -657,7 +657,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -670,7 +670,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -686,7 +686,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -699,7 +699,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -715,7 +715,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -728,7 +728,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -744,7 +744,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -757,7 +757,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html index 6f8159466db..5362b2f1f53 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -52,7 +52,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -65,7 +65,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -85,7 +85,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -98,7 +98,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -118,7 +118,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -131,7 +131,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -151,7 +151,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -164,7 +164,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -184,7 +184,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -197,7 +197,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -217,7 +217,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -230,7 +230,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -250,7 +250,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -263,7 +263,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -283,7 +283,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -296,7 +296,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -316,7 +316,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -329,7 +329,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -349,7 +349,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -362,7 +362,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -382,7 +382,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -395,7 +395,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -415,7 +415,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -428,7 +428,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -448,7 +448,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -461,7 +461,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -481,7 +481,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -494,7 +494,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -514,7 +514,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -527,7 +527,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -547,7 +547,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -560,7 +560,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -580,7 +580,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -593,7 +593,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -613,7 +613,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -626,7 +626,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -646,7 +646,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -659,7 +659,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -679,7 +679,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -692,7 +692,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -712,7 +712,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -725,7 +725,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -745,7 +745,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -758,7 +758,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -778,7 +778,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -791,7 +791,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -811,7 +811,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -824,7 +824,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -844,7 +844,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -857,7 +857,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.html index 84527f5a283..e77309135d6 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -53,7 +53,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -66,9 +66,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -87,7 +87,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -100,9 +100,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -121,7 +121,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -134,9 +134,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -155,7 +155,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -168,9 +168,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -189,7 +189,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -202,9 +202,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -223,7 +223,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -236,9 +236,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -257,7 +257,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -270,9 +270,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -291,7 +291,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -304,9 +304,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -325,7 +325,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -338,9 +338,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -359,7 +359,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -372,9 +372,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -393,7 +393,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -406,9 +406,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -427,7 +427,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -440,9 +440,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -461,7 +461,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -474,9 +474,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -495,7 +495,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -508,9 +508,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -529,7 +529,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -542,9 +542,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -563,7 +563,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -576,9 +576,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -597,7 +597,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -610,9 +610,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -631,7 +631,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -644,9 +644,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -665,7 +665,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -678,9 +678,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -699,7 +699,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -712,9 +712,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -733,7 +733,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -746,9 +746,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -767,7 +767,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -780,9 +780,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -801,7 +801,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -814,9 +814,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -835,7 +835,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -848,9 +848,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -869,7 +869,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -882,9 +882,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.html index 46bc366c8ac..c82ca80cadf 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -50,7 +50,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -63,9 +63,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -81,7 +81,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -94,9 +94,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -112,7 +112,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -125,9 +125,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -143,7 +143,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -156,9 +156,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -174,7 +174,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -187,9 +187,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -205,7 +205,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -218,9 +218,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -236,7 +236,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -249,9 +249,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -267,7 +267,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -280,9 +280,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -298,7 +298,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -311,9 +311,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -329,7 +329,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -342,9 +342,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -360,7 +360,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -373,9 +373,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -391,7 +391,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -404,9 +404,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -422,7 +422,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -435,9 +435,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -453,7 +453,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -466,9 +466,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -484,7 +484,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -497,9 +497,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -515,7 +515,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -528,9 +528,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -546,7 +546,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -559,9 +559,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -577,7 +577,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -590,9 +590,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -608,7 +608,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -621,9 +621,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -639,7 +639,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -652,9 +652,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -670,7 +670,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -683,9 +683,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -701,7 +701,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -714,9 +714,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -732,7 +732,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -745,9 +745,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -763,7 +763,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -776,9 +776,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -794,7 +794,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -807,9 +807,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.html b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.html index e636330c59f..bc7d0134b34 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = document.getElementById("canvas0"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -54,7 +54,7 @@ const canvas = document.getElementById("canvas1"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -67,9 +67,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -89,7 +89,7 @@ const canvas = document.getElementById("canvas2"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -102,9 +102,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -124,7 +124,7 @@ const canvas = document.getElementById("canvas3"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -137,9 +137,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -159,7 +159,7 @@ const canvas = document.getElementById("canvas4"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -172,9 +172,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -194,7 +194,7 @@ const canvas = document.getElementById("canvas5"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -207,9 +207,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -229,7 +229,7 @@ const canvas = document.getElementById("canvas6"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -242,9 +242,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -264,7 +264,7 @@ const canvas = document.getElementById("canvas7"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -277,9 +277,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -299,7 +299,7 @@ const canvas = document.getElementById("canvas8"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -312,9 +312,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -334,7 +334,7 @@ const canvas = document.getElementById("canvas9"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -347,9 +347,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -369,7 +369,7 @@ const canvas = document.getElementById("canvas10"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -382,9 +382,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -404,7 +404,7 @@ const canvas = document.getElementById("canvas11"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -417,9 +417,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -439,7 +439,7 @@ const canvas = document.getElementById("canvas12"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -452,9 +452,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -474,7 +474,7 @@ const canvas = document.getElementById("canvas13"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -487,9 +487,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -509,7 +509,7 @@ const canvas = document.getElementById("canvas14"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -522,9 +522,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -544,7 +544,7 @@ const canvas = document.getElementById("canvas15"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -557,9 +557,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -579,7 +579,7 @@ const canvas = document.getElementById("canvas16"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -592,9 +592,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -614,7 +614,7 @@ const canvas = document.getElementById("canvas17"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -627,9 +627,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -649,7 +649,7 @@ const canvas = document.getElementById("canvas18"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -662,9 +662,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -684,7 +684,7 @@ const canvas = document.getElementById("canvas19"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -697,9 +697,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -719,7 +719,7 @@ const canvas = document.getElementById("canvas20"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -732,9 +732,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -754,7 +754,7 @@ const canvas = document.getElementById("canvas21"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -767,9 +767,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -789,7 +789,7 @@ const canvas = document.getElementById("canvas22"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -802,9 +802,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -824,7 +824,7 @@ const canvas = document.getElementById("canvas23"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -837,9 +837,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -859,7 +859,7 @@ const canvas = document.getElementById("canvas24"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -872,9 +872,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -894,7 +894,7 @@ const canvas = document.getElementById("canvas25"); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -907,9 +907,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.png b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/element/compositing/2d.composite.grid.no_filter.shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html b/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html new file mode 100644 index 00000000000..6d109c3ffcd --- /dev/null +++ b/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html @@ -0,0 +1,99 @@ +<!DOCTYPE html> +<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> +<meta charset="UTF-8"> +<title>Canvas test: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</title> +<h1 style="font-size: 20px;">2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</h1> +<p class="desc">Test that fillTextCluster() renders using the drawing styles as they were when `ctx.measureText()` was called, regardless of any changes in the context since.</p> + +<div style="display: grid; grid-gap: 4px; + grid-template-columns: repeat(2, max-content); + font-size: 13px; text-align: center;"> +<span> + <div>letter_spacing</div> + <canvas id="canvas0" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas0"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.letterSpacing = '2px'; + + ctx.fillText(text, 10, 25); + + ctx.letterSpacing = '6px'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>word_spacing</div> + <canvas id="canvas1" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas1"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.wordSpacing = '2px'; + + ctx.fillText(text, 10, 25); + + ctx.wordSpacing = '10px'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_kerning</div> + <canvas id="canvas2" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas2"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontKerning = 'none'; + + ctx.fillText(text, 10, 25); + + ctx.fontKerning = 'normal'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_variant_caps</div> + <canvas id="canvas3" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas3"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontVariantCaps = 'small-caps'; + + ctx.fillText(text, 10, 25); + + ctx.fontVariantCaps = 'all-small-caps'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +</div> diff --git a/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html b/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html new file mode 100644 index 00000000000..fac5f6f2b67 --- /dev/null +++ b/tests/wpt/tests/html/canvas/element/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html @@ -0,0 +1,120 @@ +<!DOCTYPE html> +<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> +<meta charset="UTF-8"> +<link rel="match" href="2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html"> +<title>Canvas test: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</title> +<h1 style="font-size: 20px;">2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</h1> +<p class="desc">Test that fillTextCluster() renders using the drawing styles as they were when `ctx.measureText()` was called, regardless of any changes in the context since.</p> + +<div style="display: grid; grid-gap: 4px; + grid-template-columns: repeat(2, max-content); + font-size: 13px; text-align: center;"> +<span> + <div>letter_spacing</div> + <canvas id="canvas0" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas0"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.letterSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.letterSpacing = '6px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>word_spacing</div> + <canvas id="canvas1" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas1"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.wordSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.wordSpacing = '10px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_kerning</div> + <canvas id="canvas2" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas2"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontKerning = 'none'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontKerning = 'normal'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_variant_caps</div> + <canvas id="canvas3" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas3"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontVariantCaps = 'small-caps'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontVariantCaps = 'all-small-caps'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + </script> +</span> + +</div> diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.html index 72b23aeeafb..5a90053e8f6 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -55,7 +55,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -65,10 +65,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -91,7 +91,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -101,10 +101,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -127,7 +127,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -137,10 +137,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -163,7 +163,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -173,10 +173,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -199,7 +199,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -209,10 +209,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -235,7 +235,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -245,10 +245,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -271,7 +271,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -281,10 +281,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -307,7 +307,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -317,10 +317,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -343,7 +343,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -353,10 +353,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -379,7 +379,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -389,10 +389,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -415,7 +415,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -425,10 +425,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -451,7 +451,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -461,10 +461,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -487,7 +487,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -497,10 +497,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -523,7 +523,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -533,10 +533,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -559,7 +559,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -569,10 +569,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -595,7 +595,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -605,10 +605,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -631,7 +631,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -641,10 +641,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -667,7 +667,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -677,10 +677,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -703,7 +703,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -713,10 +713,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -739,7 +739,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -749,10 +749,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -775,7 +775,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -785,10 +785,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -811,7 +811,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -821,10 +821,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -847,7 +847,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -857,10 +857,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -883,7 +883,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -893,10 +893,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -919,7 +919,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -929,10 +929,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.w.html index 89f4dba75b5..d010912cd06 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,10 +32,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -72,7 +72,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -82,10 +82,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -122,7 +122,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -132,10 +132,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -172,7 +172,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -182,10 +182,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -222,7 +222,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -232,10 +232,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -272,7 +272,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -282,10 +282,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -322,7 +322,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -332,10 +332,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -372,7 +372,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -382,10 +382,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -422,7 +422,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -432,10 +432,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -472,7 +472,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -482,10 +482,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -522,7 +522,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -532,10 +532,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -572,7 +572,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -582,10 +582,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -622,7 +622,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -632,10 +632,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -672,7 +672,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -682,10 +682,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -722,7 +722,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -732,10 +732,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -772,7 +772,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -782,10 +782,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -822,7 +822,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -832,10 +832,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -872,7 +872,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -882,10 +882,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -922,7 +922,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -932,10 +932,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -972,7 +972,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -982,10 +982,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1022,7 +1022,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1032,10 +1032,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1072,7 +1072,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1082,10 +1082,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1122,7 +1122,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1132,10 +1132,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1172,7 +1172,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1182,10 +1182,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1222,7 +1222,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1232,10 +1232,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1272,7 +1272,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1282,10 +1282,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.js deleted file mode 100644 index 45329fcd9c8..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.drawImage.worker.js +++ /dev/null @@ -1,685 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.no_shadow.drawImage -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.html index 3f8fdc8164d..6bad129784f 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -52,7 +52,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -62,10 +62,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -85,7 +85,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -95,10 +95,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -118,7 +118,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -128,10 +128,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -151,7 +151,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -161,10 +161,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -184,7 +184,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -194,10 +194,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -217,7 +217,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -227,10 +227,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -250,7 +250,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -260,10 +260,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -283,7 +283,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -293,10 +293,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -316,7 +316,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -326,10 +326,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -349,7 +349,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -359,10 +359,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -382,7 +382,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -392,10 +392,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -415,7 +415,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -425,10 +425,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -448,7 +448,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -458,10 +458,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -481,7 +481,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -491,10 +491,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -514,7 +514,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -524,10 +524,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -547,7 +547,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -557,10 +557,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -580,7 +580,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -590,10 +590,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -613,7 +613,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -623,10 +623,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -646,7 +646,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -656,10 +656,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -679,7 +679,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -689,10 +689,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -712,7 +712,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -722,10 +722,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -745,7 +745,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -755,10 +755,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -778,7 +778,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -788,10 +788,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -811,7 +811,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -821,10 +821,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -844,7 +844,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -854,10 +854,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.w.html index 37839bf8a8b..0c93086b54c 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,10 +32,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -69,7 +69,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -79,10 +79,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -116,7 +116,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -126,10 +126,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -163,7 +163,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -173,10 +173,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -210,7 +210,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -220,10 +220,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -257,7 +257,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -267,10 +267,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -304,7 +304,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -314,10 +314,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -351,7 +351,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -361,10 +361,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -398,7 +398,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -408,10 +408,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -445,7 +445,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -455,10 +455,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -492,7 +492,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -502,10 +502,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -539,7 +539,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -549,10 +549,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -586,7 +586,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -596,10 +596,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -633,7 +633,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -643,10 +643,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -680,7 +680,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -690,10 +690,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -727,7 +727,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -737,10 +737,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -774,7 +774,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -784,10 +784,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -821,7 +821,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -831,10 +831,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -868,7 +868,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -878,10 +878,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -915,7 +915,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -925,10 +925,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -962,7 +962,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -972,10 +972,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1009,7 +1009,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1019,10 +1019,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1056,7 +1056,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1066,10 +1066,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1103,7 +1103,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1113,10 +1113,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1150,7 +1150,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1160,10 +1160,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1197,7 +1197,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1207,10 +1207,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.js deleted file mode 100644 index dff55436a40..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.fillRect.worker.js +++ /dev/null @@ -1,607 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.no_shadow.fillRect -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.html index 0bb970ab3f8..47cd363f06e 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,10 +29,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -56,7 +56,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -66,10 +66,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -93,7 +93,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -103,10 +103,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -130,7 +130,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -140,10 +140,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -167,7 +167,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -177,10 +177,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -204,7 +204,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -214,10 +214,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -241,7 +241,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -251,10 +251,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -278,7 +278,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -288,10 +288,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -315,7 +315,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -325,10 +325,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -352,7 +352,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -362,10 +362,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -389,7 +389,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -399,10 +399,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -426,7 +426,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -436,10 +436,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -463,7 +463,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -473,10 +473,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -500,7 +500,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -510,10 +510,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -537,7 +537,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -547,10 +547,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -574,7 +574,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -584,10 +584,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -611,7 +611,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -621,10 +621,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -648,7 +648,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -658,10 +658,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -685,7 +685,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -695,10 +695,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -722,7 +722,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -732,10 +732,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -759,7 +759,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -769,10 +769,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -796,7 +796,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -806,10 +806,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -833,7 +833,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -843,10 +843,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -870,7 +870,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -880,10 +880,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -907,7 +907,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -917,10 +917,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -944,7 +944,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -954,10 +954,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.png Binary files differindex 2318c1ec94e..263ed6ecdd2 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.w.html index 81d0a8e6a69..7f07a2c7645 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,10 +32,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -73,7 +73,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -83,10 +83,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -124,7 +124,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -134,10 +134,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -175,7 +175,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -185,10 +185,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -226,7 +226,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -236,10 +236,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -277,7 +277,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -287,10 +287,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -328,7 +328,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -338,10 +338,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -379,7 +379,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -389,10 +389,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -430,7 +430,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -440,10 +440,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -481,7 +481,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -491,10 +491,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -532,7 +532,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -542,10 +542,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -583,7 +583,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -593,10 +593,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -634,7 +634,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -644,10 +644,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -685,7 +685,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -695,10 +695,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -736,7 +736,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -746,10 +746,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -787,7 +787,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -797,10 +797,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -838,7 +838,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -848,10 +848,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -889,7 +889,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -899,10 +899,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -940,7 +940,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -950,10 +950,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -991,7 +991,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1001,10 +1001,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1042,7 +1042,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1052,10 +1052,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1093,7 +1093,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1103,10 +1103,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1144,7 +1144,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1154,10 +1154,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1195,7 +1195,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1205,10 +1205,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1246,7 +1246,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1256,10 +1256,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1297,7 +1297,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1307,10 +1307,10 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.js deleted file mode 100644 index d3e79cd2d15..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.no_shadow.pattern.worker.js +++ /dev/null @@ -1,711 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.no_shadow.pattern -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.html index 5c9e992c7ce..fc8f2e20162 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -57,7 +57,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -67,12 +67,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -95,7 +95,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -105,12 +105,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -133,7 +133,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -143,12 +143,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -171,7 +171,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -181,12 +181,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -209,7 +209,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -219,12 +219,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -247,7 +247,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -257,12 +257,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -285,7 +285,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -295,12 +295,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -323,7 +323,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -333,12 +333,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -361,7 +361,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -371,12 +371,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -399,7 +399,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -409,12 +409,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -437,7 +437,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -447,12 +447,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -475,7 +475,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -485,12 +485,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -513,7 +513,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -523,12 +523,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -551,7 +551,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -561,12 +561,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -589,7 +589,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -599,12 +599,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -627,7 +627,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -637,12 +637,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -665,7 +665,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -675,12 +675,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -703,7 +703,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -713,12 +713,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -741,7 +741,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -751,12 +751,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -779,7 +779,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -789,12 +789,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -817,7 +817,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -827,12 +827,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -855,7 +855,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -865,12 +865,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -893,7 +893,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -903,12 +903,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -931,7 +931,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -941,12 +941,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -969,7 +969,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -979,12 +979,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.w.html index 08e66abd464..fb417b9c576 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.drawImage</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,12 +32,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -74,7 +74,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -84,12 +84,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -126,7 +126,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -136,12 +136,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -178,7 +178,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -188,12 +188,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -230,7 +230,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -240,12 +240,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -282,7 +282,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -292,12 +292,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -334,7 +334,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -344,12 +344,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -386,7 +386,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -396,12 +396,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -438,7 +438,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -448,12 +448,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -490,7 +490,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -500,12 +500,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -542,7 +542,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -552,12 +552,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -594,7 +594,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -604,12 +604,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -646,7 +646,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -656,12 +656,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -698,7 +698,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -708,12 +708,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -750,7 +750,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -760,12 +760,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -802,7 +802,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -812,12 +812,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -854,7 +854,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -864,12 +864,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -906,7 +906,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -916,12 +916,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -958,7 +958,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -968,12 +968,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1010,7 +1010,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1020,12 +1020,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1062,7 +1062,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1072,12 +1072,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1114,7 +1114,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1124,12 +1124,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1166,7 +1166,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1176,12 +1176,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1218,7 +1218,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1228,12 +1228,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1270,7 +1270,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1280,12 +1280,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1322,7 +1322,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1332,12 +1332,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.js deleted file mode 100644 index 9a9c2f93632..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.drawImage.worker.js +++ /dev/null @@ -1,737 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.shadow.drawImage -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.html index 0f6b88fd5e9..995bc9d65e6 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -54,7 +54,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -64,12 +64,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -89,7 +89,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -99,12 +99,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -124,7 +124,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -134,12 +134,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -159,7 +159,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -169,12 +169,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -194,7 +194,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -204,12 +204,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -229,7 +229,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -239,12 +239,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -264,7 +264,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -274,12 +274,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -299,7 +299,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -309,12 +309,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -334,7 +334,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -344,12 +344,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -369,7 +369,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -379,12 +379,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -404,7 +404,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -414,12 +414,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -439,7 +439,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -449,12 +449,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -474,7 +474,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -484,12 +484,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -509,7 +509,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -519,12 +519,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -544,7 +544,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -554,12 +554,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -579,7 +579,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -589,12 +589,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -614,7 +614,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -624,12 +624,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -649,7 +649,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -659,12 +659,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -684,7 +684,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -694,12 +694,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -719,7 +719,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -729,12 +729,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -754,7 +754,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -764,12 +764,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -789,7 +789,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -799,12 +799,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -824,7 +824,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -834,12 +834,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -859,7 +859,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -869,12 +869,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -894,7 +894,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -904,12 +904,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.w.html index f754f538b56..78c509f40f3 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.fillRect</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,12 +32,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -71,7 +71,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -81,12 +81,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -120,7 +120,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -130,12 +130,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -169,7 +169,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -179,12 +179,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -218,7 +218,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -228,12 +228,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -267,7 +267,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -277,12 +277,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -316,7 +316,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -326,12 +326,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -365,7 +365,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -375,12 +375,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -414,7 +414,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -424,12 +424,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -463,7 +463,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -473,12 +473,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -512,7 +512,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -522,12 +522,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -561,7 +561,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -571,12 +571,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -610,7 +610,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -620,12 +620,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -659,7 +659,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -669,12 +669,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -708,7 +708,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -718,12 +718,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -757,7 +757,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -767,12 +767,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -806,7 +806,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -816,12 +816,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -855,7 +855,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -865,12 +865,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -904,7 +904,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -914,12 +914,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -953,7 +953,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -963,12 +963,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1002,7 +1002,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1012,12 +1012,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1051,7 +1051,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1061,12 +1061,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1100,7 +1100,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1110,12 +1110,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1149,7 +1149,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1159,12 +1159,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1198,7 +1198,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1208,12 +1208,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1247,7 +1247,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1257,12 +1257,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.js deleted file mode 100644 index f495009b301..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.fillRect.worker.js +++ /dev/null @@ -1,659 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.shadow.fillRect -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.html index e89aff9196d..f1bc4c64be7 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -29,12 +29,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -58,7 +58,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -68,12 +68,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -97,7 +97,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -107,12 +107,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -136,7 +136,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -146,12 +146,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -175,7 +175,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -185,12 +185,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -214,7 +214,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -224,12 +224,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -253,7 +253,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -263,12 +263,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -292,7 +292,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -302,12 +302,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -331,7 +331,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -341,12 +341,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -370,7 +370,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -380,12 +380,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -409,7 +409,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -419,12 +419,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -448,7 +448,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -458,12 +458,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -487,7 +487,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -497,12 +497,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -526,7 +526,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -536,12 +536,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -565,7 +565,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -575,12 +575,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -604,7 +604,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -614,12 +614,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -643,7 +643,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -653,12 +653,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -682,7 +682,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -692,12 +692,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -721,7 +721,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -731,12 +731,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -760,7 +760,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -770,12 +770,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -799,7 +799,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -809,12 +809,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -838,7 +838,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -848,12 +848,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -877,7 +877,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -887,12 +887,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -916,7 +916,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -926,12 +926,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -955,7 +955,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -965,12 +965,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -994,7 +994,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1004,12 +1004,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.png Binary files differindex fde78773116..ade9f67ef2e 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.w.html index 79f7aab01cd..de144bfaa64 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.filter.shadow.pattern</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,12 +32,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -75,7 +75,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -85,12 +85,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -128,7 +128,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -138,12 +138,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -181,7 +181,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -191,12 +191,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -234,7 +234,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -244,12 +244,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -287,7 +287,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -297,12 +297,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -340,7 +340,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -350,12 +350,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -393,7 +393,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -403,12 +403,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -446,7 +446,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -456,12 +456,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -499,7 +499,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -509,12 +509,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -552,7 +552,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -562,12 +562,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -605,7 +605,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -615,12 +615,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -658,7 +658,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -668,12 +668,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -711,7 +711,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -721,12 +721,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -764,7 +764,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -774,12 +774,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -817,7 +817,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -827,12 +827,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -870,7 +870,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -880,12 +880,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -923,7 +923,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -933,12 +933,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -976,7 +976,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -986,12 +986,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1029,7 +1029,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1039,12 +1039,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1082,7 +1082,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1092,12 +1092,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1135,7 +1135,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1145,12 +1145,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1188,7 +1188,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1198,12 +1198,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1241,7 +1241,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1251,12 +1251,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1294,7 +1294,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1304,12 +1304,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1347,7 +1347,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1357,12 +1357,12 @@ ctx.globalAlpha = 0.5; - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.js deleted file mode 100644 index d960d0d5401..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.filter.shadow.pattern.worker.js +++ /dev/null @@ -1,763 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.filter.shadow.pattern -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html index 54a53b46576..5aac6d6b212 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -55,7 +55,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -68,7 +68,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -91,7 +91,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -104,7 +104,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -127,7 +127,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -140,7 +140,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -163,7 +163,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -176,7 +176,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -199,7 +199,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -212,7 +212,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -235,7 +235,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -248,7 +248,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -271,7 +271,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -284,7 +284,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -307,7 +307,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -320,7 +320,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -343,7 +343,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -356,7 +356,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -379,7 +379,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -392,7 +392,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -415,7 +415,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -428,7 +428,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -451,7 +451,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -464,7 +464,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -487,7 +487,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -500,7 +500,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -523,7 +523,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -536,7 +536,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -559,7 +559,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -572,7 +572,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -595,7 +595,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -608,7 +608,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -631,7 +631,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -644,7 +644,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -667,7 +667,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -680,7 +680,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -703,7 +703,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -716,7 +716,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -739,7 +739,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -752,7 +752,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -775,7 +775,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -788,7 +788,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -811,7 +811,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -824,7 +824,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -847,7 +847,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -860,7 +860,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -883,7 +883,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -896,7 +896,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -919,7 +919,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -932,7 +932,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.w.html index 4750ed210ff..67fdbabce2e 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.drawImage</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,7 +35,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -72,7 +72,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -85,7 +85,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -122,7 +122,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -135,7 +135,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -172,7 +172,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -185,7 +185,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -222,7 +222,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -235,7 +235,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -272,7 +272,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -285,7 +285,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -322,7 +322,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -335,7 +335,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -372,7 +372,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -385,7 +385,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -422,7 +422,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -435,7 +435,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -472,7 +472,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -485,7 +485,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -522,7 +522,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -535,7 +535,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -572,7 +572,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -585,7 +585,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -622,7 +622,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -635,7 +635,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -672,7 +672,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -685,7 +685,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -722,7 +722,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -735,7 +735,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -772,7 +772,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -785,7 +785,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -822,7 +822,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -835,7 +835,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -872,7 +872,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -885,7 +885,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -922,7 +922,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -935,7 +935,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -972,7 +972,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -985,7 +985,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1022,7 +1022,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1035,7 +1035,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1072,7 +1072,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1085,7 +1085,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1122,7 +1122,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1135,7 +1135,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1172,7 +1172,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1185,7 +1185,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1222,7 +1222,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1235,7 +1235,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1272,7 +1272,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1285,7 +1285,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js deleted file mode 100644 index de1686a76e8..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.drawImage.worker.js +++ /dev/null @@ -1,685 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.no_shadow.drawImage -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html index e69af8a79a9..c1001d77815 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -52,7 +52,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -65,7 +65,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -85,7 +85,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -98,7 +98,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -118,7 +118,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -131,7 +131,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -151,7 +151,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -164,7 +164,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -184,7 +184,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -197,7 +197,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -217,7 +217,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -230,7 +230,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -250,7 +250,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -263,7 +263,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -283,7 +283,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -296,7 +296,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -316,7 +316,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -329,7 +329,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -349,7 +349,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -362,7 +362,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -382,7 +382,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -395,7 +395,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -415,7 +415,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -428,7 +428,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -448,7 +448,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -461,7 +461,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -481,7 +481,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -494,7 +494,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -514,7 +514,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -527,7 +527,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -547,7 +547,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -560,7 +560,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -580,7 +580,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -593,7 +593,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -613,7 +613,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -626,7 +626,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -646,7 +646,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -659,7 +659,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -679,7 +679,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -692,7 +692,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -712,7 +712,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -725,7 +725,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -745,7 +745,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -758,7 +758,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -778,7 +778,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -791,7 +791,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -811,7 +811,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -824,7 +824,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -844,7 +844,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -857,7 +857,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.w.html index 0cfc23ab86a..fcc39718c39 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.fillRect</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,7 +35,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -69,7 +69,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -82,7 +82,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -116,7 +116,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -129,7 +129,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -163,7 +163,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -176,7 +176,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -210,7 +210,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -223,7 +223,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -257,7 +257,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -270,7 +270,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -304,7 +304,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -317,7 +317,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -351,7 +351,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -364,7 +364,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -398,7 +398,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -411,7 +411,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -445,7 +445,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -458,7 +458,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -492,7 +492,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -505,7 +505,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -539,7 +539,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -552,7 +552,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -586,7 +586,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -599,7 +599,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -633,7 +633,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -646,7 +646,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -680,7 +680,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -693,7 +693,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -727,7 +727,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -740,7 +740,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -774,7 +774,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -787,7 +787,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -821,7 +821,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -834,7 +834,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -868,7 +868,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -881,7 +881,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -915,7 +915,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -928,7 +928,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -962,7 +962,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -975,7 +975,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1009,7 +1009,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1022,7 +1022,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1056,7 +1056,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1069,7 +1069,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1103,7 +1103,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1116,7 +1116,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1150,7 +1150,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1163,7 +1163,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1197,7 +1197,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1210,7 +1210,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js deleted file mode 100644 index cb60645b704..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.fillRect.worker.js +++ /dev/null @@ -1,607 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.no_shadow.fillRect -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html index b6008b7c79f..b977eb0bec3 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,7 +32,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -56,7 +56,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -69,7 +69,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -93,7 +93,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -106,7 +106,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -130,7 +130,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -143,7 +143,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -167,7 +167,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -180,7 +180,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -204,7 +204,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -217,7 +217,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -241,7 +241,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -254,7 +254,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -278,7 +278,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -291,7 +291,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -315,7 +315,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -328,7 +328,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -352,7 +352,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -365,7 +365,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -389,7 +389,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -402,7 +402,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -426,7 +426,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -439,7 +439,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -463,7 +463,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -476,7 +476,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -500,7 +500,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -513,7 +513,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -537,7 +537,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -550,7 +550,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -574,7 +574,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -587,7 +587,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -611,7 +611,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -624,7 +624,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -648,7 +648,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -661,7 +661,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -685,7 +685,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -698,7 +698,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -722,7 +722,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -735,7 +735,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -759,7 +759,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -772,7 +772,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -796,7 +796,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -809,7 +809,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -833,7 +833,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -846,7 +846,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -870,7 +870,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -883,7 +883,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -907,7 +907,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -920,7 +920,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -944,7 +944,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -957,7 +957,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png Binary files differindex ce392a1dccc..0163f403ca4 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.w.html index ef952ce12cd..9e9eb022915 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.no_shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.no_shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.no_shadow.pattern</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,7 +35,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -73,7 +73,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -86,7 +86,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -124,7 +124,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -137,7 +137,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -175,7 +175,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -188,7 +188,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -226,7 +226,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -239,7 +239,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -277,7 +277,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -290,7 +290,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -328,7 +328,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -341,7 +341,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -379,7 +379,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -392,7 +392,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -430,7 +430,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -443,7 +443,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -481,7 +481,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -494,7 +494,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -532,7 +532,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -545,7 +545,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -583,7 +583,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -596,7 +596,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -634,7 +634,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -647,7 +647,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -685,7 +685,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -698,7 +698,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -736,7 +736,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -749,7 +749,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -787,7 +787,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -800,7 +800,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -838,7 +838,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -851,7 +851,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -889,7 +889,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -902,7 +902,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -940,7 +940,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -953,7 +953,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -991,7 +991,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1004,7 +1004,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1042,7 +1042,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1055,7 +1055,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1093,7 +1093,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1106,7 +1106,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1144,7 +1144,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1157,7 +1157,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1195,7 +1195,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1208,7 +1208,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1246,7 +1246,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1259,7 +1259,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1297,7 +1297,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1310,7 +1310,7 @@ // No filter. // No shadow. - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js deleted file mode 100644 index e1479261ce2..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.no_shadow.pattern.worker.js +++ /dev/null @@ -1,711 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.no_shadow.pattern -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - // No shadow. - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.html index d25f183aeb8..382f3abeb19 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.drawImage</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -57,7 +57,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -70,9 +70,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -95,7 +95,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -108,9 +108,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -133,7 +133,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -146,9 +146,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -171,7 +171,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -184,9 +184,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -209,7 +209,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -222,9 +222,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -247,7 +247,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -260,9 +260,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -285,7 +285,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -298,9 +298,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -323,7 +323,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -336,9 +336,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -361,7 +361,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -374,9 +374,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -399,7 +399,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -412,9 +412,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -437,7 +437,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -450,9 +450,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -475,7 +475,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -488,9 +488,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -513,7 +513,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -526,9 +526,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -551,7 +551,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -564,9 +564,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -589,7 +589,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -602,9 +602,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -627,7 +627,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -640,9 +640,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -665,7 +665,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -678,9 +678,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -703,7 +703,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -716,9 +716,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -741,7 +741,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -754,9 +754,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -779,7 +779,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -792,9 +792,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -817,7 +817,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -830,9 +830,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -855,7 +855,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -868,9 +868,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -893,7 +893,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -906,9 +906,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -931,7 +931,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -944,9 +944,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -969,7 +969,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -982,9 +982,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.w.html index c66b467d627..56db72864d3 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.shadow.drawImage-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.drawImage</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.drawImage</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,9 +35,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -74,7 +74,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -87,9 +87,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -126,7 +126,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -139,9 +139,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -178,7 +178,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -191,9 +191,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -230,7 +230,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -243,9 +243,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -282,7 +282,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -295,9 +295,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -334,7 +334,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -347,9 +347,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -386,7 +386,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -399,9 +399,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -438,7 +438,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -451,9 +451,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -490,7 +490,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -503,9 +503,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -542,7 +542,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -555,9 +555,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -594,7 +594,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -607,9 +607,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -646,7 +646,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -659,9 +659,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -698,7 +698,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -711,9 +711,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -750,7 +750,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -763,9 +763,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -802,7 +802,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -815,9 +815,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -854,7 +854,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -867,9 +867,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -906,7 +906,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -919,9 +919,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -958,7 +958,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -971,9 +971,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1010,7 +1010,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1023,9 +1023,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1062,7 +1062,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1075,9 +1075,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1114,7 +1114,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1127,9 +1127,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1166,7 +1166,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1179,9 +1179,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1218,7 +1218,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1231,9 +1231,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1270,7 +1270,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1283,9 +1283,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1322,7 +1322,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1335,9 +1335,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js deleted file mode 100644 index c7827238f69..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.drawImage.worker.js +++ /dev/null @@ -1,737 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.shadow.drawImage -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.drawImage(img_canvas, 5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.html index 3fdbfa72caf..bb58344fcbd 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.fillRect</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -54,7 +54,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -67,9 +67,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -89,7 +89,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -102,9 +102,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -124,7 +124,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -137,9 +137,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -159,7 +159,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -172,9 +172,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -194,7 +194,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -207,9 +207,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -229,7 +229,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -242,9 +242,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -264,7 +264,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -277,9 +277,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -299,7 +299,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -312,9 +312,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -334,7 +334,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -347,9 +347,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -369,7 +369,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -382,9 +382,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -404,7 +404,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -417,9 +417,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -439,7 +439,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -452,9 +452,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -474,7 +474,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -487,9 +487,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -509,7 +509,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -522,9 +522,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -544,7 +544,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -557,9 +557,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -579,7 +579,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -592,9 +592,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -614,7 +614,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -627,9 +627,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -649,7 +649,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -662,9 +662,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -684,7 +684,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -697,9 +697,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -719,7 +719,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -732,9 +732,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -754,7 +754,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -767,9 +767,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -789,7 +789,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -802,9 +802,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -824,7 +824,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -837,9 +837,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -859,7 +859,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -872,9 +872,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -894,7 +894,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -907,9 +907,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.w.html index 519631612f0..3586c806cd4 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.shadow.fillRect-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.fillRect</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.fillRect</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,9 +35,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -71,7 +71,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -84,9 +84,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -120,7 +120,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -133,9 +133,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -169,7 +169,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -182,9 +182,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -218,7 +218,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -231,9 +231,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -267,7 +267,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -280,9 +280,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -316,7 +316,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -329,9 +329,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -365,7 +365,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -378,9 +378,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -414,7 +414,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -427,9 +427,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -463,7 +463,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -476,9 +476,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -512,7 +512,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -525,9 +525,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -561,7 +561,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -574,9 +574,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -610,7 +610,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -623,9 +623,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -659,7 +659,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -672,9 +672,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -708,7 +708,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -721,9 +721,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -757,7 +757,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -770,9 +770,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -806,7 +806,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -819,9 +819,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -855,7 +855,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -868,9 +868,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -904,7 +904,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -917,9 +917,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -953,7 +953,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -966,9 +966,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1002,7 +1002,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1015,9 +1015,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1051,7 +1051,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1064,9 +1064,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1100,7 +1100,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1113,9 +1113,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1149,7 +1149,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1162,9 +1162,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1198,7 +1198,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1211,9 +1211,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); @@ -1247,7 +1247,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1260,9 +1260,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; ctx.fillStyle = 'rgb(52, 255, 52)'; ctx.fillRect(5, 5, 50, 30); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js deleted file mode 100644 index 217fe38a8de..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.fillRect.worker.js +++ /dev/null @@ -1,659 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.shadow.fillRect -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - ctx.fillStyle = 'rgb(52, 255, 52)'; - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.html index d9df6be84f1..9703ea138d0 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.html @@ -2,7 +2,7 @@ <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> <meta charset="UTF-8"> <link rel="match" href="2d.composite.grid.no_filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.pattern</h1> <p class="desc"></p> @@ -19,7 +19,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -32,9 +32,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -58,7 +58,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -71,9 +71,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -97,7 +97,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -110,9 +110,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -136,7 +136,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -149,9 +149,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -175,7 +175,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -188,9 +188,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -214,7 +214,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -227,9 +227,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -253,7 +253,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -266,9 +266,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -292,7 +292,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -305,9 +305,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -331,7 +331,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -344,9 +344,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -370,7 +370,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -383,9 +383,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -409,7 +409,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -422,9 +422,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -448,7 +448,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -461,9 +461,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -487,7 +487,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -500,9 +500,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -526,7 +526,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -539,9 +539,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -565,7 +565,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -578,9 +578,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -604,7 +604,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -617,9 +617,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -643,7 +643,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -656,9 +656,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -682,7 +682,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -695,9 +695,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -721,7 +721,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -734,9 +734,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -760,7 +760,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -773,9 +773,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -799,7 +799,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -812,9 +812,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -838,7 +838,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -851,9 +851,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -877,7 +877,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -890,9 +890,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -916,7 +916,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -929,9 +929,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -955,7 +955,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -968,9 +968,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -994,7 +994,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1007,9 +1007,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.png b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.png Binary files differindex aca03a61b22..6e80ad32bb6 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.png +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.png diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.w.html b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.w.html index 5c698e8c760..318d2b971e4 100644 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.w.html +++ b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.w.html @@ -3,7 +3,7 @@ <meta charset="UTF-8"> <html class="reftest-wait"> <link rel="match" href="2d.composite.grid.no_filter.shadow.pattern-expected.html"> -<meta name=fuzzy content="maxDifference=0-2; totalPixels=0-10210"> +<meta name=fuzzy content="maxDifference=0-3; totalPixels=0-25392"> <title>Canvas test: 2d.composite.grid.no_filter.shadow.pattern</title> <h1 style="font-size: 20px;">2d.composite.grid.no_filter.shadow.pattern</h1> <p class="desc"></p> @@ -22,7 +22,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -35,9 +35,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-over' + ctx.globalCompositeOperation = 'source-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -75,7 +75,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -88,9 +88,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-in' + ctx.globalCompositeOperation = 'source-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -128,7 +128,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -141,9 +141,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-out' + ctx.globalCompositeOperation = 'source-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -181,7 +181,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -194,9 +194,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'source-atop' + ctx.globalCompositeOperation = 'source-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -234,7 +234,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -247,9 +247,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-over' + ctx.globalCompositeOperation = 'destination-over'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -287,7 +287,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -300,9 +300,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-in' + ctx.globalCompositeOperation = 'destination-in'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -340,7 +340,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -353,9 +353,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-out' + ctx.globalCompositeOperation = 'destination-out'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -393,7 +393,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -406,9 +406,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'destination-atop' + ctx.globalCompositeOperation = 'destination-atop'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -446,7 +446,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -459,9 +459,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighter' + ctx.globalCompositeOperation = 'lighter'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -499,7 +499,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -512,9 +512,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'copy' + ctx.globalCompositeOperation = 'copy'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -552,7 +552,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -565,9 +565,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'xor' + ctx.globalCompositeOperation = 'xor'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -605,7 +605,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -618,9 +618,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'multiply' + ctx.globalCompositeOperation = 'multiply'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -658,7 +658,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -671,9 +671,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'screen' + ctx.globalCompositeOperation = 'screen'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -711,7 +711,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -724,9 +724,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'overlay' + ctx.globalCompositeOperation = 'overlay'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -764,7 +764,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -777,9 +777,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'darken' + ctx.globalCompositeOperation = 'darken'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -817,7 +817,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -830,9 +830,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'lighten' + ctx.globalCompositeOperation = 'lighten'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -870,7 +870,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -883,9 +883,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-dodge' + ctx.globalCompositeOperation = 'color-dodge'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -923,7 +923,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -936,9 +936,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color-burn' + ctx.globalCompositeOperation = 'color-burn'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -976,7 +976,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -989,9 +989,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hard-light' + ctx.globalCompositeOperation = 'hard-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1029,7 +1029,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1042,9 +1042,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'soft-light' + ctx.globalCompositeOperation = 'soft-light'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1082,7 +1082,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1095,9 +1095,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'difference' + ctx.globalCompositeOperation = 'difference'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1135,7 +1135,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1148,9 +1148,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'exclusion' + ctx.globalCompositeOperation = 'exclusion'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1188,7 +1188,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1201,9 +1201,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'hue' + ctx.globalCompositeOperation = 'hue'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1241,7 +1241,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1254,9 +1254,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'saturation' + ctx.globalCompositeOperation = 'saturation'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1294,7 +1294,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1307,9 +1307,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'color' + ctx.globalCompositeOperation = 'color'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); @@ -1347,7 +1347,7 @@ const canvas = new OffscreenCanvas(80, 60); const ctx = canvas.getContext('2d'); - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -1360,9 +1360,9 @@ // No filter. ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; - ctx.globalCompositeOperation = 'luminosity' + ctx.globalCompositeOperation = 'luminosity'; const img_canvas = new OffscreenCanvas(80, 60); const img_ctx = img_canvas.getContext('2d'); diff --git a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js b/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js deleted file mode 100644 index f26657b5214..00000000000 --- a/tests/wpt/tests/html/canvas/offscreen/compositing/2d.composite.grid.no_filter.shadow.pattern.worker.js +++ /dev/null @@ -1,763 +0,0 @@ -// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -// OffscreenCanvas test in a worker:2d.composite.grid.no_filter.shadow.pattern -// Description: -// Note: - -importScripts("/resources/testharness.js"); -importScripts("/html/canvas/resources/canvas-tests.js"); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'source-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-over' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-in' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-out' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'destination-atop' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighter' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'copy' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'xor' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'multiply' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'screen' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'overlay' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'darken' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'lighten' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-dodge' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color-burn' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hard-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'soft-light' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'difference' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'exclusion' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'hue' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'saturation' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'color' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -test(t => { - const canvas = new OffscreenCanvas(80, 60); - const ctx = canvas.getContext('2d'); - - ctx.fillStyle = 'rgb(0, 102, 255)'; - ctx.fillRect(15, 15, 50, 30); - - ctx.translate(25, 20); - ctx.rotate(Math.PI / 2); - ctx.scale(0.6, 1.2); - ctx.translate(-25, -20); - - ctx.globalAlpha = 0.5; - - // No filter. - ctx.shadowOffsetX = 20; - ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; - - ctx.globalCompositeOperation = 'luminosity' - - const img_canvas = new OffscreenCanvas(80, 60); - const img_ctx = img_canvas.getContext('2d'); - img_ctx.fillStyle = 'rgb(52, 255, 52)'; - img_ctx.fillRect(0, 0, 80, 60); - ctx.fillStyle = ctx.createPattern(img_canvas, 'repeat'); - ctx.fillRect(5, 5, 50, 30); -}, ""); - -done(); diff --git a/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html new file mode 100644 index 00000000000..6d109c3ffcd --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html @@ -0,0 +1,99 @@ +<!DOCTYPE html> +<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> +<meta charset="UTF-8"> +<title>Canvas test: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</title> +<h1 style="font-size: 20px;">2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</h1> +<p class="desc">Test that fillTextCluster() renders using the drawing styles as they were when `ctx.measureText()` was called, regardless of any changes in the context since.</p> + +<div style="display: grid; grid-gap: 4px; + grid-template-columns: repeat(2, max-content); + font-size: 13px; text-align: center;"> +<span> + <div>letter_spacing</div> + <canvas id="canvas0" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas0"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.letterSpacing = '2px'; + + ctx.fillText(text, 10, 25); + + ctx.letterSpacing = '6px'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>word_spacing</div> + <canvas id="canvas1" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas1"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.wordSpacing = '2px'; + + ctx.fillText(text, 10, 25); + + ctx.wordSpacing = '10px'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_kerning</div> + <canvas id="canvas2" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas2"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontKerning = 'none'; + + ctx.fillText(text, 10, 25); + + ctx.fontKerning = 'normal'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +<span> + <div>font_variant_caps</div> + <canvas id="canvas3" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = document.getElementById("canvas3"); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontVariantCaps = 'small-caps'; + + ctx.fillText(text, 10, 25); + + ctx.fontVariantCaps = 'all-small-caps'; + + ctx.fillText(text, 10, 50); + </script> +</span> + +</div> diff --git a/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html new file mode 100644 index 00000000000..8d304cb1a78 --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.html @@ -0,0 +1,136 @@ +<!DOCTYPE html> +<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> +<meta charset="UTF-8"> +<link rel="match" href="2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html"> +<title>Canvas test: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</title> +<h1 style="font-size: 20px;">2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</h1> +<p class="desc">Test that fillTextCluster() renders using the drawing styles as they were when `ctx.measureText()` was called, regardless of any changes in the context since.</p> + +<div style="display: grid; grid-gap: 4px; + grid-template-columns: repeat(2, max-content); + font-size: 13px; text-align: center;"> +<span> + <div>letter_spacing</div> + <canvas id="canvas0" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.letterSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.letterSpacing = '6px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const outputCanvas = document.getElementById("canvas0"); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(canvas, 0, 0); + </script> +</span> + +<span> + <div>word_spacing</div> + <canvas id="canvas1" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.wordSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.wordSpacing = '10px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const outputCanvas = document.getElementById("canvas1"); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(canvas, 0, 0); + </script> +</span> + +<span> + <div>font_kerning</div> + <canvas id="canvas2" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontKerning = 'none'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontKerning = 'normal'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const outputCanvas = document.getElementById("canvas2"); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(canvas, 0, 0); + </script> +</span> + +<span> + <div>font_variant_caps</div> + <canvas id="canvas3" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script type="module"> + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontVariantCaps = 'small-caps'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontVariantCaps = 'all-small-caps'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const outputCanvas = document.getElementById("canvas3"); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(canvas, 0, 0); + </script> +</span> + +</div> diff --git a/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html new file mode 100644 index 00000000000..76f61dad315 --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/text/2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative.w.html @@ -0,0 +1,195 @@ +<!DOCTYPE html> +<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> +<meta charset="UTF-8"> +<html class="reftest-wait"> +<link rel="match" href="2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative-expected.html"> +<title>Canvas test: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</title> +<h1 style="font-size: 20px;">2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative</h1> +<p class="desc">Test that fillTextCluster() renders using the drawing styles as they were when `ctx.measureText()` was called, regardless of any changes in the context since.</p> +<script>pending_tests = 4;</script> + +<div style="display: grid; grid-gap: 4px; + grid-template-columns: repeat(2, max-content); + font-size: 13px; text-align: center;"> +<span> + <div>letter_spacing</div> + <canvas id="canvas0" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script id="myWorker0" type="text/worker"> + self.onmessage = function(e) { + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.letterSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.letterSpacing = '6px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const bitmap = canvas.transferToImageBitmap(); + self.postMessage(bitmap, bitmap); + }; + </script> + <script type="module"> + const blob = new Blob([document.getElementById('myWorker0').textContent]); + const worker = new Worker(URL.createObjectURL(blob)); + worker.addEventListener('message', msg => { + const outputCanvas = document.getElementById('canvas0'); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(msg.data, 0, 0); + if (--pending_tests == 0) { + document.documentElement.classList.remove('reftest-wait'); + } + }); + worker.postMessage(null); + </script> +</span> + +<span> + <div>word_spacing</div> + <canvas id="canvas1" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script id="myWorker1" type="text/worker"> + self.onmessage = function(e) { + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.wordSpacing = '2px'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.wordSpacing = '10px'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const bitmap = canvas.transferToImageBitmap(); + self.postMessage(bitmap, bitmap); + }; + </script> + <script type="module"> + const blob = new Blob([document.getElementById('myWorker1').textContent]); + const worker = new Worker(URL.createObjectURL(blob)); + worker.addEventListener('message', msg => { + const outputCanvas = document.getElementById('canvas1'); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(msg.data, 0, 0); + if (--pending_tests == 0) { + document.documentElement.classList.remove('reftest-wait'); + } + }); + worker.postMessage(null); + </script> +</span> + +<span> + <div>font_kerning</div> + <canvas id="canvas2" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script id="myWorker2" type="text/worker"> + self.onmessage = function(e) { + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontKerning = 'none'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontKerning = 'normal'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const bitmap = canvas.transferToImageBitmap(); + self.postMessage(bitmap, bitmap); + }; + </script> + <script type="module"> + const blob = new Blob([document.getElementById('myWorker2').textContent]); + const worker = new Worker(URL.createObjectURL(blob)); + worker.addEventListener('message', msg => { + const outputCanvas = document.getElementById('canvas2'); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(msg.data, 0, 0); + if (--pending_tests == 0) { + document.documentElement.classList.remove('reftest-wait'); + } + }); + worker.postMessage(null); + </script> +</span> + +<span> + <div>font_variant_caps</div> + <canvas id="canvas3" width="250" height="80" style="outline: 1px solid"> + <p class="fallback">FAIL (fallback content)</p> + </canvas> + <script id="myWorker3" type="text/worker"> + self.onmessage = function(e) { + const canvas = new OffscreenCanvas(250, 80); + const ctx = canvas.getContext('2d'); + + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + ctx.fontVariantCaps = 'small-caps'; + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + ctx.fontVariantCaps = 'all-small-caps'; + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + + const bitmap = canvas.transferToImageBitmap(); + self.postMessage(bitmap, bitmap); + }; + </script> + <script type="module"> + const blob = new Blob([document.getElementById('myWorker3').textContent]); + const worker = new Worker(URL.createObjectURL(blob)); + worker.addEventListener('message', msg => { + const outputCanvas = document.getElementById('canvas3'); + const outputCtx = outputCanvas.getContext('2d'); + outputCtx.drawImage(msg.data, 0, 0); + if (--pending_tests == 0) { + document.documentElement.classList.remove('reftest-wait'); + } + }); + worker.postMessage(null); + </script> +</span> + +</div> +</html> diff --git a/tests/wpt/tests/html/canvas/tools/yaml-new/compositing.yaml b/tests/wpt/tests/html/canvas/tools/yaml-new/compositing.yaml index 1db0c590db2..838ad4b06cb 100644 --- a/tests/wpt/tests/html/canvas/tools/yaml-new/compositing.yaml +++ b/tests/wpt/tests/html/canvas/tools/yaml-new/compositing.yaml @@ -234,7 +234,7 @@ - name: 2d.composite.grid size: [80, 60] code: | - ctx.fillStyle = 'rgb(0, 102, 255)'; + ctx.fillStyle = 'rgba(0, 102, 240, 0.8)'; ctx.fillRect(15, 15, 50, 30); ctx.translate(25, 20); @@ -247,13 +247,13 @@ {{ js_filter_code }} {{ js_shadow_code }} - ctx.globalCompositeOperation = '{{ variant_names[0] }}' + ctx.globalCompositeOperation = '{{ variant_names[0] }}'; {{ js_draw_code }} cairo_reference: | # Background. cr.push_group() - cr.set_source_rgb(0, 102/255, 1) + cr.set_source_rgba(0, 102/255, 240/255, 0.8) cr.rectangle(15, 15, 50, 30) cr.fill() background = cr.pop_group() @@ -289,7 +289,7 @@ cr.set_source(filtered_foreground) cr.paint() - fuzzy: maxDifference=0-2; totalPixels=0-10210 + fuzzy: maxDifference=0-3; totalPixels=0-25392 variants_layout: - single_file - multi_files @@ -354,7 +354,8 @@ js_filter_code: // No filter. cairo_filter_code: "# No filter." filter: - js_filter_code: ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 0))' + js_filter_code: |- + ctx.filter = 'drop-shadow(5px -5px 0px rgb(255, 154, 100))'; cairo_filter_code: |- cr.push_group() cr.set_operator(cairo.OPERATOR_OVER) @@ -362,7 +363,7 @@ cr.set_source(foreground) cr.paint() cr.set_operator(cairo.OPERATOR_IN) - cr.set_source_rgba(1, 154/255, 0) + cr.set_source_rgb(1, 154/255, 100/255) cr.paint() cr.pop_group_to_source() cr.paint() @@ -374,7 +375,7 @@ js_shadow_code: |- ctx.shadowOffsetX = 20; ctx.shadowOffsetY = 20; - ctx.shadowColor = 'rgb(154, 0, 154)'; + ctx.shadowColor = 'rgba(154, 0, 154, 0.8)'; cairo_shadow_code: |- cr.push_group() cr.set_operator(cairo.OPERATOR_OVER) @@ -382,7 +383,7 @@ cr.set_source(filtered_foreground) cr.paint() cr.set_operator(cairo.OPERATOR_IN) - cr.set_source_rgb(154/255, 0, 154/255) + cr.set_source_rgba(154/255, 0, 154/255, 0.8) cr.paint() cr.pop_group_to_source() cr.paint() diff --git a/tests/wpt/tests/html/canvas/tools/yaml-new/text.yaml b/tests/wpt/tests/html/canvas/tools/yaml-new/text.yaml index 78312640c08..7fe59a91a35 100644 --- a/tests/wpt/tests/html/canvas/tools/yaml-new/text.yaml +++ b/tests/wpt/tests/html/canvas/tools/yaml-new/text.yaml @@ -2160,6 +2160,64 @@ const y = 100; ctx.fillText(text, x, y); +- name: 2d.text.measure.text-clusters-rendering-drawing-styles-change.tentative + desc: >- + Test that fillTextCluster() renders using the drawing styles as they were + when `ctx.measureText()` was called, regardless of any changes in the + context since. + size: [250, 80] + code: | + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + {{ original_value }} + + let tm = ctx.measureText(text); + const clusters = tm.getTextClusters(); + + {{ modified_value }} + + for (const cluster of clusters) { + ctx.fillTextCluster(cluster, 10, 25); + } + + ctx.fillText(text, 10, 50); + reference: | + ctx.font = '20px serif'; + const text = 'Test ♦️ find'; + + {{ original_value }} + + ctx.fillText(text, 10, 25); + + {{ modified_value }} + + ctx.fillText(text, 10, 50); + variants_layout: + [single_file] + grid_width: 2 + variants: + - letter_spacing: + original_value: |- + ctx.letterSpacing = '2px'; + modified_value: |- + ctx.letterSpacing = '6px'; + word_spacing: + original_value: |- + ctx.wordSpacing = '2px'; + modified_value: |- + ctx.wordSpacing = '10px'; + font_kerning: + original_value: |- + ctx.fontKerning = 'none'; + modified_value: |- + ctx.fontKerning = 'normal'; + font_variant_caps: + original_value: |- + ctx.fontVariantCaps = 'small-caps'; + modified_value: |- + ctx.fontVariantCaps = 'all-small-caps'; + - name: 2d.text.measure.text-clusters-range.tentative desc: >- Test that getTextClusters() and fillTextCluster() correctly render diff --git a/tests/wpt/tests/html/dom/aria-attribute-reflection.html b/tests/wpt/tests/html/dom/aria-attribute-reflection.html index d2e5b03f853..2a73f5c557b 100644 --- a/tests/wpt/tests/html/dom/aria-attribute-reflection.html +++ b/tests/wpt/tests/html/dom/aria-attribute-reflection.html @@ -120,16 +120,7 @@ test(function(t) { }, "aria-colindex attribute reflects."); </script> -<div id="colindextext" aria-colindextext="x"></div> -<script> -test(function(t) { - var element = document.getElementById("colindextext"); - assert_equals(element.ariaColIndexText, "x"); - element.ariaColIndexText = "y"; - assert_equals(element.getAttribute("aria-colindextext"), "y"); - testNullable(element, "ariaColIndexText", "aria-colindextext"); -}, "aria-colindextext attribute reflects."); -</script> +<!-- colindextext -> aria-attribute-reflection.tentative.html --> <div id="colspan" aria-colspan="2"></div> <script> @@ -153,16 +144,7 @@ test(function(t) { }, "aria-current attribute reflects."); </script> -<div id="description" aria-description="cold as ice"></div> -<script> -test(function(t) { - var element = document.getElementById("description"); - assert_equals(element.ariaDescription, "cold as ice"); - element.ariaDescription = "hot as fire"; - assert_equals(element.getAttribute("aria-description"), "hot as fire"); - testNullable(element, "ariaDescription", "aria-description"); -}, "aria-description attribute reflects."); -</script> +<!-- description -> aria-attribute-reflection.tentative.html --> <div id="disabled" aria-disabled="true"></div> <script> @@ -406,16 +388,7 @@ test(function(t) { }, "aria-rowindex attribute reflects."); </script> -<div id="rowindextext" aria-rowindextext="x"></div> -<script> - test(function(t) { - var element = document.getElementById("rowindextext"); - assert_equals(element.ariaRowIndexText, "x"); - element.ariaRowIndexText = "y"; - assert_equals(element.getAttribute("aria-rowindextext"), "y"); - testNullable(element, "ariaRowIndexText", "aria-rowindextext"); - }, "aria-rowindextext attribute reflects."); -</script> +<!-- rowindextext -> aria-attribute-reflection.tentative.html --> <div id="rowspan" aria-rowspan="2"></div> <script> diff --git a/tests/wpt/tests/html/dom/aria-attribute-reflection.tentative.html b/tests/wpt/tests/html/dom/aria-attribute-reflection.tentative.html new file mode 100644 index 00000000000..db38ddef06c --- /dev/null +++ b/tests/wpt/tests/html/dom/aria-attribute-reflection.tentative.html @@ -0,0 +1,60 @@ +<!DOCTYPE HTML> +<meta charset="utf-8" /> +<title>Element Reflection for ARIA properties</title> +<link rel=help href="https://wicg.github.io/aom/spec/aria-reflection.html"> +<link rel="author" title="Meredith Lane" href="meredithl@chromium.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<script> +function testNullable(element, jsAttr, contentAttr) { + var originalValue = element[jsAttr]; + assert_false(originalValue === null); + element[jsAttr] = null; + assert_equals(element[jsAttr], null); + assert_false(element.hasAttribute(contentAttr)); + // Setting to undefined results in same state as setting to null. + element[jsAttr] = originalValue; + element[jsAttr] = undefined; + assert_equals(element[jsAttr], null); + assert_false(element.hasAttribute(contentAttr)); +} +</script> + +<!-- tentative --> +<div id="colindextext" aria-colindextext="x"></div> +<script> +test(function(t) { + var element = document.getElementById("colindextext"); + assert_equals(element.ariaColIndexText, "x"); + element.ariaColIndexText = "y"; + assert_equals(element.getAttribute("aria-colindextext"), "y"); + testNullable(element, "ariaColIndexText", "aria-colindextext"); +}, "aria-colindextext attribute reflects."); +</script> + +<!-- tentative --> +<div id="description" aria-description="cold as ice"></div> +<script> +test(function(t) { + var element = document.getElementById("description"); + assert_equals(element.ariaDescription, "cold as ice"); + element.ariaDescription = "hot as fire"; + assert_equals(element.getAttribute("aria-description"), "hot as fire"); + testNullable(element, "ariaDescription", "aria-description"); +}, "aria-description attribute reflects."); +</script> + +<!-- tentative --> +<div id="rowindextext" aria-rowindextext="x"></div> +<script> + test(function(t) { + var element = document.getElementById("rowindextext"); + assert_equals(element.ariaRowIndexText, "x"); + element.ariaRowIndexText = "y"; + assert_equals(element.getAttribute("aria-rowindextext"), "y"); + testNullable(element, "ariaRowIndexText", "aria-rowindextext"); + }, "aria-rowindextext attribute reflects."); +</script> + +</html> diff --git a/tests/wpt/tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-whitespace-pre-line.html b/tests/wpt/tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-whitespace-pre-line.html index c5696df9de8..8ce76f2eb1f 100644 --- a/tests/wpt/tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-whitespace-pre-line.html +++ b/tests/wpt/tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-whitespace-pre-line.html @@ -31,11 +31,9 @@ test(() => { test(() => { function collapseWhitespace(s) { - return s.replace(/ +/g, ' ') // collapse runs of spaces - .replace(/ $/mg, '') // strip trailing spaces - .replace(/^ /mg, '') // strip leading spaces - .replace(/\n\n+/g, '\n') // collapse runs of newlines - .replace(/^\n/, ''); // remove any initial newline + return s.replace(/ +/g, ' ') // collapse runs of spaces + .replace(/ $/mg, '') // strip trailing spaces + .replace(/^ /mg, ''); // strip leading spaces } assert_equals(c.innerText, collapseWhitespace(d.innerText)); }, "innerText has collapsed whitespace but preserved newlines with pre-line"); diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/nested-select-crash.html b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/nested-select-crash.html new file mode 100644 index 00000000000..dea01de80be --- /dev/null +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/nested-select-crash.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<link rel=author href="mailto:jarhar@chromium.org"> +<link rel=help href="https://issues.chromium.org/issues/373893049"> + +<style> +select,::picker(select) { + appearance: base-select; +} +</style> + +<select> + <button> + Hello?? + <selectedoption /> + </button> + <option> + <object type="no/type"> + <select> + <button> + Hello?? + <selectedoption /> + </button> + <option>One</option> + <option>Two</option> + </select> + </object> + </option> + <option>Two</option> +</select> diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption-in-option-crash.html b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption-in-option-crash.html new file mode 100644 index 00000000000..d619b8dcd92 --- /dev/null +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption-in-option-crash.html @@ -0,0 +1,19 @@ +<!DOCTYPE html> +<link rel=author href="mailto:jarhar@chromium.org"> +<link rel=help href="https://github.com/openui/open-ui/issues/1120"> + +<style> +select,::picker(select) { + appearance: base-select; +} +</style> + +<select> + <button> + <selectedoption></selectedoption> + </button> + <option>one + <selectedoption></selectedoption> + </option> + <option>two</option> +</select> diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption.tentative.html b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption.tentative.html index b3381ac510a..398b0b988de 100644 --- a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption.tentative.html +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoption.tentative.html @@ -44,20 +44,21 @@ promise_test(async () => { assert_equals(selectedOption.innerHTML, optionTwo.innerHTML, 'The innerHTML of <selectedoption> should change after the selected option is changed.'); + let oldInnerHTML = optionTwo.innerHTML; spanTwo.textContent = 'new span'; await new Promise(queueMicrotask); - assert_equals(selectedOption.innerHTML, optionTwo.innerHTML, - '<selectedoption> should respond to text content changes.'); + assert_equals(selectedOption.innerHTML, oldInnerHTML, + '<selectedoption> should not respond to <option> text content changes.'); spanTwo.appendChild(document.createElement('div')); await new Promise(queueMicrotask); - assert_equals(selectedOption.innerHTML, optionTwo.innerHTML, - '<selectedoption> should respond to new elements being added to descendants.'); + assert_equals(selectedOption.innerHTML, oldInnerHTML, + '<selectedoption> should not respond to new elements being added to descendants of <option>.'); spanTwo.setAttribute('data-foo', 'bar'); await new Promise(queueMicrotask); - assert_equals(selectedOption.innerHTML, optionTwo.innerHTML, - '<selectedoption> should respond to attributes being added to descendants.'); + assert_equals(selectedOption.innerHTML, oldInnerHTML, + '<selectedoption> should not respond to attributes being added to descendants of <option>.'); form.reset(); await new Promise(queueMicrotask); @@ -90,5 +91,7 @@ promise_test(async () => { optionOne.remove(); assert_equals(selectedOption.innerHTML, '', 'The content of <selectedoption> should be cleared if there is no selected <option>.'); + + // TODO(crbug.com/336844298): Add tests for mutation records during parsing }, 'The <selectedoption> element should reflect the HTML contents of the selected <option>.'); </script> diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoptionelement-attr.tentative.html b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoptionelement-attr.tentative.html index 63b4af3abc8..f7ef48c24e4 100644 --- a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoptionelement-attr.tentative.html +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/selectedoptionelement-attr.tentative.html @@ -34,11 +34,14 @@ promise_test(async () => { 'Removing the selectedoptionelement attribute via IDL should synchronously clear the contents of the <selectedoption>.'); select.selectedOptionElement = selectedoption; + assert_equals(selectedoption.innerHTML, optionOne.innerHTML, + 'Re-setting the selectedoptionelement attribute via IDL should synchronously assign the contents of <selectedoption>.'); + let oldInnerHTML = optionOne.innerHTML; optionOne.querySelector('span').remove(); await new Promise(queueMicrotask); - assert_equals(selectedoption.innerHTML, optionOne.innerHTML, - 'Mutating the selected <option> should update the <selectedoption> contents after a microtask.'); + assert_equals(selectedoption.innerHTML, oldInnerHTML, + 'Mutating the selected <option> should not update the <selectedoption> contents.'); select.value = 'two'; assert_equals(selectedoption.innerHTML, optionTwo.innerHTML, diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/switch-picker-appearance.tentative.html b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/switch-picker-appearance.tentative.html index 7a58f62e290..3367cc7cd37 100644 --- a/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/switch-picker-appearance.tentative.html +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/customizable-select/switch-picker-appearance.tentative.html @@ -8,22 +8,22 @@ <script src="/resources/testdriver-vendor.js"></script> <script src="../../../popovers/resources/popover-utils.js"></script> +<select id=test1 style="appearance:base-select"> + <option>option</option> + <option>option</option> +</select> + <style> - ::picker(select) { + select#test1::picker(select) { background-color: red; } - ::picker(select):popover-open { + select#test1::picker(select):popover-open { background-color: green; } </style> -<select style="appearance:base-select"> - <option>option</option> - <option>option</option> -</select> - <script> -const select = document.querySelector('select'); +const select1 = document.querySelector('select#test1'); const red = 'rgb(255, 0, 0)'; const green = 'rgb(0, 128, 0)'; @@ -31,91 +31,176 @@ promise_test(async (t) => { const style = document.createElement('style'); document.head.append(style); t.add_cleanup(() => style.remove()); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red); style.innerHTML = '::picker(select) {appearance: base-select}'; - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'base-select'); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red,'still closed, so popover-open doesn\'t match'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'base-select'); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red,'still closed, so popover-open doesn\'t match'); // Now open the picker - assert_throws_dom('NotAllowedError',() => select.showPicker(),'showPicker requires user activation'); - assert_false(select.matches(':open')); + assert_throws_dom('NotAllowedError',() => select1.showPicker(),'showPicker requires user activation'); + assert_false(select1.matches(':open')); await test_driver.bless('showPicker'); - select.showPicker(); - assert_true(select.matches(':open')); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'base-select'); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,green,'now open, so popover-open matches'); + select1.showPicker(); + assert_true(select1.matches(':open')); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'base-select'); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,green,'now open, so popover-open matches'); // Close the picker - await clickOn(select); - assert_false(select.matches(':open')); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red,'back to closed'); + await clickOn(select1); + assert_false(select1.matches(':open')); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red,'back to closed'); }, 'Basic functionality of select picker and appearance'); promise_test(async (t) => { const style = document.createElement('style'); document.head.append(style); t.add_cleanup(() => style.remove()); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); style.innerHTML = '::picker(select) {appearance: auto}'; - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'auto'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'auto'); await test_driver.bless('showPicker'); - select.showPicker(); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red,'appearance:auto picker is never open'); + select1.showPicker(); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red,'appearance:auto picker is never open'); // Close the picker - await clickOn(select); - assert_false(select.matches(':open')); + await clickOn(select1); + assert_false(select1.matches(':open')); }, 'Basic functionality of select picker with appearance:auto'); promise_test(async (t) => { const style = document.createElement('style'); document.head.append(style); t.add_cleanup(() => style.remove()); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); style.innerHTML = '::picker(select) {appearance: none}'; - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); await test_driver.bless('showPicker'); - select.showPicker(); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red,'appearance:none picker is never open'); + select1.showPicker(); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red,'appearance:none picker is never open'); // Close the picker - await clickOn(select); - assert_false(select.matches(':open')); + await clickOn(select1); + assert_false(select1.matches(':open')); }, 'Basic functionality of select picker with appearance:none'); promise_test(async (t) => { const style = document.createElement('style'); document.head.append(style); t.add_cleanup(() => style.remove()); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); style.innerHTML = ` ::picker(select) {appearance: base-select} ::picker(select):popover-open {appearance: auto} `; - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'base-select'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'base-select'); await test_driver.bless('showPicker'); - select.showPicker(); - assert_false(select.matches(':open'),'Switching appearance in :popover-open should re-close the picker'); - assert_equals(getComputedStyle(select,'::picker(select)').backgroundColor,red); + select1.showPicker(); + assert_false(select1.matches(':open'),'Switching appearance in :popover-open should re-close the picker'); + assert_equals(getComputedStyle(select1,'::picker(select)').backgroundColor,red); await new Promise(resolve => requestAnimationFrame(resolve)); - assert_false(select.matches(':open'),'There should be no oscillation or re-opening the picker'); + assert_false(select1.matches(':open'),'There should be no oscillation or re-opening the picker'); await new Promise(resolve => requestAnimationFrame(resolve)); - assert_false(select.matches(':open'),'There should be no oscillation or re-opening the picker (2)'); + assert_false(select1.matches(':open'),'There should be no oscillation or re-opening the picker (2)'); await new Promise(resolve => requestAnimationFrame(resolve)); - assert_false(select.matches(':open'),'There should be no oscillation or re-opening the picker (3)'); + assert_false(select1.matches(':open'),'There should be no oscillation or re-opening the picker (3)'); }, 'Switching appearance in popover-open should close the picker'); promise_test(async (t) => { const style = document.createElement('style'); document.head.append(style); t.add_cleanup(() => style.remove()); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); style.innerHTML = '::picker(select) {appearance: none}'; - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'base-select'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'base-select'); await test_driver.bless('showPicker'); - select.showPicker(); - assert_true(select.matches(':open')); + select1.showPicker(); + assert_true(select1.matches(':open')); style.remove(); - assert_false(select.matches(':open'),'changing appearance while the picker is open should close it'); - assert_equals(getComputedStyle(select,'::picker(select)').appearance,'none'); + assert_false(select1.matches(':open'),'changing appearance while the picker is open should close it'); + assert_equals(getComputedStyle(select1,'::picker(select)').appearance,'none'); }, 'Switching appearance in JS after picker is open should close the picker'); </script> + + +<button id=reset>Reset</button> +<select id=test2> + <button><selectedoption></selectedoption></button> + <option>option one</option> + <option>option two</option> + <option>option three</option> +</select> + +<style> + select#test2, ::picker(select) { + appearance: base-select; + } + select#test2.controlswitch:open { + appearance: auto; + } + select#test2.pickerswitch:open::picker(select) { + appearance: auto; + } + </style> + +<script> +const select2 = document.querySelector('select#test2'); +const secondOption = select2.querySelector('option:nth-of-type(2)'); + +promise_test(async (t) => { + assert_false(select2.matches(':open'),'setup'); + assert_equals(select2.value,'option one'); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(select2); + assert_true(select2.matches(':open'),'picker should open when clicked'); + assert_equals(secondOption.textContent,'option two'); + await test_driver.click(secondOption); + assert_false(select2.matches(':open')); + assert_equals(select2.value,'option two'); +},'Test of the test harness'); + +promise_test(async (t) => { + assert_false(select2.matches(':open'),'setup'); + assert_equals(select2.className,''); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(select2); + assert_true(select2.matches(':open'),'picker should open when clicked'); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(secondOption); // Choose an option + assert_false(select2.matches(':open')); + t.add_cleanup(() => select2.removeAttribute('class')); + select2.classList.add('controlswitch'); + assert_false(select2.matches(':open')); + assert_equals(getComputedStyle(select2).appearance,'base-select','appearance should not have changed yet'); + await test_driver.click(select2); + assert_false(select2.matches(':open'),'picker should get closed when the appearance value changes'); + assert_equals(getComputedStyle(select2).appearance,'base-select','appearance should be back to base-select'); +},'The select picker is closed if the <select> appearance value is changed via CSS while the picker is open'); + +promise_test(async (t) => { + assert_false(select2.matches(':open'),'setup'); + assert_equals(select2.className,''); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(select2); + assert_true(select2.matches(':open'),'picker should open when clicked'); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(secondOption); // Choose an option + assert_false(select2.matches(':open')); + t.add_cleanup(() => select2.removeAttribute('class')); + select2.classList.add('pickerswitch'); + await test_driver.click(select2); + assert_false(select2.matches(':open'),'picker should get closed when the appearance value changes'); + assert_equals(getComputedStyle(select2).appearance,'base-select','appearance should be back to base-select'); +},'The select picker is closed if the ::picker() appearance value is changed via CSS while the picker is open'); + +promise_test(async (t) => { + assert_false(select2.matches(':open'),'setup'); + assert_equals(select2.className,''); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + await test_driver.click(select2); + assert_true(select2.matches(':open'),'picker should open when clicked'); + assert_equals(getComputedStyle(select2).appearance,'base-select'); + t.add_cleanup(() => select2.removeAttribute('style')); + select2.setAttribute('style','appearance:auto'); + assert_false(select2.matches(':open'),'Adding inline style should close the picker'); + assert_equals(getComputedStyle(select2).appearance,'auto','appearance should still be auto from inline style'); +},'The select picker is closed if the <select> inline appearance value is changed while the picker is open'); +</script> diff --git a/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html new file mode 100644 index 00000000000..d6eea38fa8a --- /dev/null +++ b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-active-document.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<link rel="author" href="mailto:masonf@chromium.org"> +<link rel=help href="https://github.com/whatwg/html/pull/10705"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<script> + test(() => { + const doc = document.implementation.createHTMLDocument(); + const dialog = doc.createElement('dialog'); + doc.body.appendChild(dialog); + assert_throws_dom('InvalidStateError',() => dialog.showModal()); + assert_false(dialog.matches('[open]')); + },'showModal should throw when the document isn\'t active'); +</script> diff --git a/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html index 47612e759ea..652378e015b 100644 --- a/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html +++ b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html @@ -181,8 +181,7 @@ doc.body.appendChild(d11); this.add_cleanup(() => document.body.append(d11)); assert_false(d11.open); - d11.showModal(); - assert_true(d11.open); - this.add_cleanup(() => d11.close()); - }, "Although the document is not attached to any pages, showModal() should execute as normal."); + assert_throws_dom("INVALID_STATE_ERR", () => d11.showModal()); + assert_false(d11.open); + }, "When the document is not attached to any pages, showModal() should throw."); </script> diff --git a/tests/wpt/tests/html/semantics/popovers/popover-active-document.html b/tests/wpt/tests/html/semantics/popovers/popover-active-document.html new file mode 100644 index 00000000000..6ad1142ed79 --- /dev/null +++ b/tests/wpt/tests/html/semantics/popovers/popover-active-document.html @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<link rel="author" href="mailto:masonf@chromium.org"> +<link rel=help href="https://github.com/whatwg/html/pull/10705"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<script> + test(() => { + const doc = document.implementation.createHTMLDocument(); + const popover = doc.createElement('div'); + popover.setAttribute('popover',''); + doc.body.appendChild(popover); + assert_throws_dom('InvalidStateError',() => popover.showPopover()); + assert_false(popover.matches(':open')); + },'showPopover should throw when the document isn\'t active'); +</script> diff --git a/tests/wpt/tests/html/semantics/popovers/popover-minimum-role.html b/tests/wpt/tests/html/semantics/popovers/popover-minimum-role.html new file mode 100644 index 00000000000..8606f983969 --- /dev/null +++ b/tests/wpt/tests/html/semantics/popovers/popover-minimum-role.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<meta charset="utf-8" /> +<title>Popover minimum role</title> +<link rel="author" href="mailto:masonf@chromium.org"> +<link rel=help href="https://www.w3.org/TR/html-aam-1.0/#att-popover"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="resources/popover-utils.js"></script> + +<div popover id=popover>Popover</div> +<div id=div style="display:block">Div</div> + +<script> +test((t) => { + const popover = document.querySelector('#popover'); + assert_equals(popover.computedRole,'generic','Closed popover: role is generic'); + t.add_cleanup(() => popover.hidePopover()); + popover.showPopover(); + assert_equals(popover.computedRole,'group','With popover attribute, role is group'); +},'If specified on an element with an implicit role of generic, then the element\'s role instead maps to group.'); + +test((t) => { + const div = document.querySelector('#div'); + assert_equals(div.computedRole,'generic','Without popover attribute, role is generic'); + div.setAttribute('popover',''); + assert_true(isElementVisible(div),'element is visible due to display:block'); + assert_equals(div.computedRole,'generic','With popover attribute, but before showPopover(), role is still generic'); + t.add_cleanup(() => div.hidePopover()); + div.showPopover(); + assert_equals(div.computedRole,'group','When showing as a popover, role is group'); + div.removeAttribute('style'); + assert_equals(div.computedRole,'group','Including with style rule removed'); +},'Dynamic changes to popover attribute should change the role.'); +</script> diff --git a/tests/wpt/tests/infrastructure/assumptions/ahem-ref.html b/tests/wpt/tests/infrastructure/assumptions/ahem-ref.html deleted file mode 100644 index 9116232620f..00000000000 --- a/tests/wpt/tests/infrastructure/assumptions/ahem-ref.html +++ /dev/null @@ -1,320 +0,0 @@ -<!doctype html> -<title>Ahem checker</title> -<link rel="mismatch" href="ahem-notref.html"> -<style> -* { - padding: 0; - margin: 0; - border: none; -} -td { - width: 34px; -} -@font-face { - font-family: Ahem; - src: url("../../fonts/Ahem.ttf"); -} -table { - font: 15px/1 Ahem; - border-collapse: separate; - border-spacing: 1px; - table-layout: fixed; -} -</style> -<table> - <tr> - <td> x <!-- U+0020: SPACE --> - <td>!x <!-- U+0021: EXCLAMATION MARK --> - <td>"x <!-- U+0022: QUOTATION MARK --> - <td>#x <!-- U+0023: NUMBER SIGN --> - <td>$x <!-- U+0024: DOLLAR SIGN --> - <td>%x <!-- U+0025: PERCENT SIGN --> - <td>&x <!-- U+0026: AMPERSAND --> - <td>(x <!-- U+0028: LEFT PARENTHESIS --> - <td>)x <!-- U+0029: RIGHT PARENTHESIS --> - <td>*x <!-- U+002A: ASTERISK --> - <td>+x <!-- U+002B: PLUS SIGN --> - <td>,x <!-- U+002C: COMMA --> - <td>-x <!-- U+002D: HYPHEN-MINUS --> - <td>.x <!-- U+002E: FULL STOP --> - <td>/x <!-- U+002F: SOLIDUS --> - <td>0x <!-- U+0030: DIGIT ZERO --> - <td>1x <!-- U+0031: DIGIT ONE --> - <tr> - <td>2x <!-- U+0032: DIGIT TWO --> - <td>3x <!-- U+0033: DIGIT THREE --> - <td>4x <!-- U+0034: DIGIT FOUR --> - <td>5x <!-- U+0035: DIGIT FIVE --> - <td>6x <!-- U+0036: DIGIT SIX --> - <td>7x <!-- U+0037: DIGIT SEVEN --> - <td>8x <!-- U+0038: DIGIT EIGHT --> - <td>9x <!-- U+0039: DIGIT NINE --> - <td>:x <!-- U+003A: COLON --> - <td>;x <!-- U+003B: SEMICOLON --> - <td><x <!-- U+003C: LESS-THAN SIGN --> - <td>=x <!-- U+003D: EQUALS SIGN --> - <td>>x <!-- U+003E: GREATER-THAN SIGN --> - <td>?x <!-- U+003F: QUESTION MARK --> - <td>@x <!-- U+0040: COMMERCIAL AT --> - <td>Ax <!-- U+0041: LATIN CAPITAL LETTER A --> - <td>Bx <!-- U+0042: LATIN CAPITAL LETTER B --> - <tr> - <td>Cx <!-- U+0043: LATIN CAPITAL LETTER C --> - <td>Dx <!-- U+0044: LATIN CAPITAL LETTER D --> - <td>Ex <!-- U+0045: LATIN CAPITAL LETTER E --> - <td>Fx <!-- U+0046: LATIN CAPITAL LETTER F --> - <td>Gx <!-- U+0047: LATIN CAPITAL LETTER G --> - <td>Hx <!-- U+0048: LATIN CAPITAL LETTER H --> - <td>Ix <!-- U+0049: LATIN CAPITAL LETTER I --> - <td>Jx <!-- U+004A: LATIN CAPITAL LETTER J --> - <td>Kx <!-- U+004B: LATIN CAPITAL LETTER K --> - <td>Lx <!-- U+004C: LATIN CAPITAL LETTER L --> - <td>Mx <!-- U+004D: LATIN CAPITAL LETTER M --> - <td>Nx <!-- U+004E: LATIN CAPITAL LETTER N --> - <td>Ox <!-- U+004F: LATIN CAPITAL LETTER O --> - <td>Px <!-- U+0050: LATIN CAPITAL LETTER P --> - <td>Qx <!-- U+0051: LATIN CAPITAL LETTER Q --> - <td>Rx <!-- U+0052: LATIN CAPITAL LETTER R --> - <td>Sx <!-- U+0053: LATIN CAPITAL LETTER S --> - <tr> - <td>Tx <!-- U+0054: LATIN CAPITAL LETTER T --> - <td>Ux <!-- U+0055: LATIN CAPITAL LETTER U --> - <td>Vx <!-- U+0056: LATIN CAPITAL LETTER V --> - <td>Wx <!-- U+0057: LATIN CAPITAL LETTER W --> - <td>Xx <!-- U+0058: LATIN CAPITAL LETTER X --> - <td>Yx <!-- U+0059: LATIN CAPITAL LETTER Y --> - <td>Zx <!-- U+005A: LATIN CAPITAL LETTER Z --> - <td>[x <!-- U+005B: LEFT SQUARE BRACKET --> - <td>\x <!-- U+005C: REVERSE SOLIDUS --> - <td>]x <!-- U+005D: RIGHT SQUARE BRACKET --> - <td>^x <!-- U+005E: CIRCUMFLEX ACCENT --> - <td>_x <!-- U+005F: LOW LINE --> - <td>`x <!-- U+0060: GRAVE ACCENT --> - <td>ax <!-- U+0061: LATIN SMALL LETTER A --> - <td>bx <!-- U+0062: LATIN SMALL LETTER B --> - <td>cx <!-- U+0063: LATIN SMALL LETTER C --> - <td>dx <!-- U+0064: LATIN SMALL LETTER D --> - <tr> - <td>ex <!-- U+0065: LATIN SMALL LETTER E --> - <td>fx <!-- U+0066: LATIN SMALL LETTER F --> - <td>gx <!-- U+0067: LATIN SMALL LETTER G --> - <td>hx <!-- U+0068: LATIN SMALL LETTER H --> - <td>ix <!-- U+0069: LATIN SMALL LETTER I --> - <td>jx <!-- U+006A: LATIN SMALL LETTER J --> - <td>kx <!-- U+006B: LATIN SMALL LETTER K --> - <td>lx <!-- U+006C: LATIN SMALL LETTER L --> - <td>mx <!-- U+006D: LATIN SMALL LETTER M --> - <td>nx <!-- U+006E: LATIN SMALL LETTER N --> - <td>ox <!-- U+006F: LATIN SMALL LETTER O --> - <td>px <!-- U+0070: LATIN SMALL LETTER P --> - <td>qx <!-- U+0071: LATIN SMALL LETTER Q --> - <td>rx <!-- U+0072: LATIN SMALL LETTER R --> - <td>sx <!-- U+0073: LATIN SMALL LETTER S --> - <td>tx <!-- U+0074: LATIN SMALL LETTER T --> - <td>ux <!-- U+0075: LATIN SMALL LETTER U --> - <tr> - <td>vx <!-- U+0076: LATIN SMALL LETTER V --> - <td>wx <!-- U+0077: LATIN SMALL LETTER W --> - <td>xx <!-- U+0078: LATIN SMALL LETTER X --> - <td>yx <!-- U+0079: LATIN SMALL LETTER Y --> - <td>zx <!-- U+007A: LATIN SMALL LETTER Z --> - <td>{x <!-- U+007B: LEFT CURLY BRACKET --> - <td>|x <!-- U+007C: VERTICAL LINE --> - <td>}x <!-- U+007D: RIGHT CURLY BRACKET --> - <td>~x <!-- U+007E: TILDE --> - <td> x <!-- U+00A0: NO-BREAK SPACE --> - <td>¡x <!-- U+00A1: INVERTED EXCLAMATION MARK --> - <td>¢x <!-- U+00A2: CENT SIGN --> - <td>£x <!-- U+00A3: POUND SIGN --> - <td>¤x <!-- U+00A4: CURRENCY SIGN --> - <td>¥x <!-- U+00A5: YEN SIGN --> - <td>¦x <!-- U+00A6: BROKEN BAR --> - <td>§x <!-- U+00A7: SECTION SIGN --> - <tr> - <td>¨x <!-- U+00A8: DIAERESIS --> - <td>©x <!-- U+00A9: COPYRIGHT SIGN --> - <td>ªx <!-- U+00AA: FEMININE ORDINAL INDICATOR --> - <td>«x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK --> - <td>¬x <!-- U+00AC: NOT SIGN --> - <td>­x <!-- U+00AD: SOFT HYPHEN --> - <td>®x <!-- U+00AE: REGISTERED SIGN --> - <td>¯x <!-- U+00AF: MACRON --> - <td>°x <!-- U+00B0: DEGREE SIGN --> - <td>±x <!-- U+00B1: PLUS-MINUS SIGN --> - <td>²x <!-- U+00B2: SUPERSCRIPT TWO --> - <td>³x <!-- U+00B3: SUPERSCRIPT THREE --> - <td>´x <!-- U+00B4: ACUTE ACCENT --> - <td>µx <!-- U+00B5: MICRO SIGN --> - <td>¶x <!-- U+00B6: PILCROW SIGN --> - <td>·x <!-- U+00B7: MIDDLE DOT --> - <td>¸x <!-- U+00B8: CEDILLA --> - <tr> - <td>¹x <!-- U+00B9: SUPERSCRIPT ONE --> - <td>ºx <!-- U+00BA: MASCULINE ORDINAL INDICATOR --> - <td>»x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK --> - <td>¼x <!-- U+00BC: VULGAR FRACTION ONE QUARTER --> - <td>½x <!-- U+00BD: VULGAR FRACTION ONE HALF --> - <td>¾x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS --> - <td>¿x <!-- U+00BF: INVERTED QUESTION MARK --> - <td>Àx <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE --> - <td>Áx <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE --> - <td>Âx <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX --> - <td>Ãx <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE --> - <td>Äx <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS --> - <td>Åx <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE --> - <td>Æx <!-- U+00C6: LATIN CAPITAL LETTER AE --> - <td>Çx <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA --> - <td>Èx <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE --> - <td>Éx <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE --> - <tr> - <td>Êx <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX --> - <td>Ëx <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS --> - <td>Ìx <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE --> - <td>Íx <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE --> - <td>Îx <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX --> - <td>Ïx <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS --> - <td>Ðx <!-- U+00D0: LATIN CAPITAL LETTER ETH --> - <td>Ñx <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE --> - <td>Òx <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE --> - <td>Óx <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE --> - <td>Ôx <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX --> - <td>Õx <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE --> - <td>Öx <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS --> - <td>×x <!-- U+00D7: MULTIPLICATION SIGN --> - <td>Øx <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE --> - <td>Ùx <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE --> - <td>Úx <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE --> - <tr> - <td>Ûx <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX --> - <td>Üx <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS --> - <td>Ýx <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE --> - <td>Þx <!-- U+00DE: LATIN CAPITAL LETTER THORN --> - <td>ßx <!-- U+00DF: LATIN SMALL LETTER SHARP S --> - <td>àx <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE --> - <td>áx <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE --> - <td>âx <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX --> - <td>ãx <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE --> - <td>äx <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS --> - <td>åx <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE --> - <td>æx <!-- U+00E6: LATIN SMALL LETTER AE --> - <td>çx <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA --> - <td>èx <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE --> - <td>éx <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE --> - <td>êx <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX --> - <td>ëx <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS --> - <tr> - <td>ìx <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE --> - <td>íx <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE --> - <td>îx <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX --> - <td>ïx <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS --> - <td>ðx <!-- U+00F0: LATIN SMALL LETTER ETH --> - <td>ñx <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE --> - <td>òx <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE --> - <td>óx <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE --> - <td>ôx <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX --> - <td>õx <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE --> - <td>öx <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS --> - <td>÷x <!-- U+00F7: DIVISION SIGN --> - <td>øx <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE --> - <td>ùx <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE --> - <td>úx <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE --> - <td>ûx <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX --> - <td>üx <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS --> - <tr> - <td>ýx <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE --> - <td>þx <!-- U+00FE: LATIN SMALL LETTER THORN --> - <td>ÿx <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS --> - <td>ıx <!-- U+0131: LATIN SMALL LETTER DOTLESS I --> - <td>Œx <!-- U+0152: LATIN CAPITAL LIGATURE OE --> - <td>œx <!-- U+0153: LATIN SMALL LIGATURE OE --> - <td>Ÿx <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS --> - <td>ƒx <!-- U+0192: LATIN SMALL LETTER F WITH HOOK --> - <td>ˆx <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT --> - <td>ˇx <!-- U+02C7: CARON --> - <td>ˉx <!-- U+02C9: MODIFIER LETTER MACRON --> - <td>˘x <!-- U+02D8: BREVE --> - <td>˙x <!-- U+02D9: DOT ABOVE --> - <td>˚x <!-- U+02DA: RING ABOVE --> - <td>˛x <!-- U+02DB: OGONEK --> - <td>˜x <!-- U+02DC: SMALL TILDE --> - <td>˝x <!-- U+02DD: DOUBLE ACUTE ACCENT --> - <tr> - <td>Δx <!-- U+0394: GREEK CAPITAL LETTER DELTA --> - <td>Υx <!-- U+03A5: GREEK CAPITAL LETTER UPSILON --> - <td>Χx <!-- U+03A7: GREEK CAPITAL LETTER CHI --> - <td>Ωx <!-- U+03A9: GREEK CAPITAL LETTER OMEGA --> - <td>μx <!-- U+03BC: GREEK SMALL LETTER MU --> - <td>πx <!-- U+03C0: GREEK SMALL LETTER PI --> - <td> x <!-- U+2002: EN SPACE --> - <td> x <!-- U+2003: EM SPACE --> - <td> x <!-- U+2004: THREE-PER-EM SPACE --> - <td> x <!-- U+2005: FOUR-PER-EM SPACE --> - <td> x <!-- U+2006: SIX-PER-EM SPACE --> - <td> x <!-- U+2009: THIN SPACE --> - <td> x <!-- U+200A: HAIR SPACE --> - <td>​x <!-- U+200B: ZERO WIDTH SPACE --> - <td>‌x <!-- U+200C: ZERO WIDTH NON-JOINER --> - <td>‍x <!-- U+200D: ZERO WIDTH JOINER --> - <td>‐x <!-- U+2010: HYPHEN --> - <tr> - <td>–x <!-- U+2013: EN DASH --> - <td>—x <!-- U+2014: EM DASH --> - <td>‘x <!-- U+2018: LEFT SINGLE QUOTATION MARK --> - <td>’x <!-- U+2019: RIGHT SINGLE QUOTATION MARK --> - <td>‚x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK --> - <td>“x <!-- U+201C: LEFT DOUBLE QUOTATION MARK --> - <td>”x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK --> - <td>„x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK --> - <td>†x <!-- U+2020: DAGGER --> - <td>‡x <!-- U+2021: DOUBLE DAGGER --> - <td>•x <!-- U+2022: BULLET --> - <td>…x <!-- U+2026: HORIZONTAL ELLIPSIS --> - <td>‰x <!-- U+2030: PER MILLE SIGN --> - <td>‹x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK --> - <td>›x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK --> - <td>⁄x <!-- U+2044: FRACTION SLASH --> - <td>™x <!-- U+2122: TRADE MARK SIGN --> - <tr> - <td>Ωx <!-- U+2126: OHM SIGN --> - <td>∂x <!-- U+2202: PARTIAL DIFFERENTIAL --> - <td>∆x <!-- U+2206: INCREMENT --> - <td>∏x <!-- U+220F: N-ARY PRODUCT --> - <td>∑x <!-- U+2211: N-ARY SUMMATION --> - <td>−x <!-- U+2212: MINUS SIGN --> - <td>∙x <!-- U+2219: BULLET OPERATOR --> - <td>√x <!-- U+221A: SQUARE ROOT --> - <td>∞x <!-- U+221E: INFINITY --> - <td>∫x <!-- U+222B: INTEGRAL --> - <td>≈x <!-- U+2248: ALMOST EQUAL TO --> - <td>≠x <!-- U+2260: NOT EQUAL TO --> - <td>≤x <!-- U+2264: LESS-THAN OR EQUAL TO --> - <td>≥x <!-- U+2265: GREATER-THAN OR EQUAL TO --> - <td>⋲x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE --> - <td>◊x <!-- U+25CA: LOZENGE --> - <td> x <!-- U+3000: IDEOGRAPHIC SPACE --> - <tr> - <td>〇x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO --> - <td>一x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 --> - <td>七x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 --> - <td>三x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 --> - <td>九x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D --> - <td>二x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C --> - <td>五x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 --> - <td>八x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B --> - <td>六x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D --> - <td>十x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 --> - <td>囗x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 --> - <td>四x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB --> - <td>土x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F --> - <td>木x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 --> - <td>横x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A --> - <td>水x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 --> - <td>火x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B --> - <tr> - <td>纵x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 --> - <td>金x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 --> - <td>x <!-- U+F000 --> - <td>x <!-- U+F001 --> - <td>x <!-- U+F002 --> - <td>x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE --> -</table> diff --git a/tests/wpt/tests/infrastructure/assumptions/ahem.html b/tests/wpt/tests/infrastructure/assumptions/ahem.html index 068c1d4dee6..0607f9afb64 100644 --- a/tests/wpt/tests/infrastructure/assumptions/ahem.html +++ b/tests/wpt/tests/infrastructure/assumptions/ahem.html @@ -1,6 +1,6 @@ <!doctype html> <title>Ahem checker</title> -<link rel="match" href="ahem-ref.html"> +<link rel="mismatch" href="ahem-notref.html"> <style> * { padding: 0; diff --git a/tests/wpt/tests/infrastructure/assumptions/tools/ahem-generate-table.py b/tests/wpt/tests/infrastructure/assumptions/tools/ahem-generate-table.py index 314279f6710..0898ab78c18 100644 --- a/tests/wpt/tests/infrastructure/assumptions/tools/ahem-generate-table.py +++ b/tests/wpt/tests/infrastructure/assumptions/tools/ahem-generate-table.py @@ -109,8 +109,7 @@ def build_table(): cases = [ # file, is_test, rel - ("../ahem.html", True, "match"), - ("../ahem-ref.html", False, "mismatch"), + ("../ahem.html", True, "mismatch"), ("../ahem-notref.html", False, None), ] diff --git a/tests/wpt/tests/jpegxl/3x3_jpeg_recompression-ref.html b/tests/wpt/tests/jpegxl/3x3_jpeg_recompression-ref.html index 070243d6a7e..e0fb0f319ff 100644 --- a/tests/wpt/tests/jpegxl/3x3_jpeg_recompression-ref.html +++ b/tests/wpt/tests/jpegxl/3x3_jpeg_recompression-ref.html @@ -1,4 +1,4 @@ <!DOCTYPE html> <title>JPEG XL test reference</title> -<img src="./resources/3x3_jpeg_recompression.png"> +<img src="./resources/3x3_jpeg_recompression.png" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3_jpeg_recompression.html b/tests/wpt/tests/jpegxl/3x3_jpeg_recompression.html index f28fca8fdce..7d484635b53 100644 --- a/tests/wpt/tests/jpegxl/3x3_jpeg_recompression.html +++ b/tests/wpt/tests/jpegxl/3x3_jpeg_recompression.html @@ -1,8 +1,8 @@ <!DOCTYPE html> <title>JPEG XL test</title> -<meta name=fuzzy content="0-1;0-9"> +<meta name=fuzzy content="0-1;0-275625"> <link rel="help" href="https://jpeg.org/jpegxl/"> <link rel="match" href="3x3_jpeg_recompression-ref.html"> <meta name="assert" content="JPEG XL image is rendered correctly"> -<img src="./resources/3x3_jpeg_recompression.jxl"> +<img src="./resources/3x3_jpeg_recompression.jxl" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3_srgb_lossless-ref.html b/tests/wpt/tests/jpegxl/3x3_srgb_lossless-ref.html index 1bb50832409..498cbf3944a 100644 --- a/tests/wpt/tests/jpegxl/3x3_srgb_lossless-ref.html +++ b/tests/wpt/tests/jpegxl/3x3_srgb_lossless-ref.html @@ -1,4 +1,4 @@ <!DOCTYPE html> <title>JPEG XL test reference</title> -<img src="./resources/3x3_srgb_lossless.png"> +<img src="./resources/3x3_srgb_lossless.png" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3_srgb_lossless.html b/tests/wpt/tests/jpegxl/3x3_srgb_lossless.html index 589f11c68c4..da70067ca67 100644 --- a/tests/wpt/tests/jpegxl/3x3_srgb_lossless.html +++ b/tests/wpt/tests/jpegxl/3x3_srgb_lossless.html @@ -1,8 +1,8 @@ <!DOCTYPE html> <title>JPEG XL test</title> -<meta name=fuzzy content="0-4;0-9"> +<meta name=fuzzy content="0-4;0-275625"> <link rel="help" href="https://jpeg.org/jpegxl/"> <link rel="match" href="3x3_srgb_lossless-ref.html"> <meta name="assert" content="JPEG XL image is rendered correctly"> -<img src="./resources/3x3_srgb_lossless.jxl"> +<img src="./resources/3x3_srgb_lossless.jxl" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3_srgb_lossy-ref.html b/tests/wpt/tests/jpegxl/3x3_srgb_lossy-ref.html index a5e95baba3b..ad43c9d00b9 100644 --- a/tests/wpt/tests/jpegxl/3x3_srgb_lossy-ref.html +++ b/tests/wpt/tests/jpegxl/3x3_srgb_lossy-ref.html @@ -1,4 +1,4 @@ <!DOCTYPE html> <title>JPEG XL test reference</title> -<img src="./resources/3x3_srgb_lossy.png"> +<img src="./resources/3x3_srgb_lossy.png" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3_srgb_lossy.html b/tests/wpt/tests/jpegxl/3x3_srgb_lossy.html index 3a92b2b7301..83cd8eec351 100644 --- a/tests/wpt/tests/jpegxl/3x3_srgb_lossy.html +++ b/tests/wpt/tests/jpegxl/3x3_srgb_lossy.html @@ -1,8 +1,8 @@ <!DOCTYPE html> <title>JPEG XL test</title> -<meta name=fuzzy content="0-10;0-9"> +<meta name=fuzzy content="0-10;0-275625"> <link rel="help" href="https://jpeg.org/jpegxl/"> <link rel="match" href="3x3_srgb_lossy-ref.html"> <meta name="assert" content="JPEG XL image is rendered correctly"> -<img src="./resources/3x3_srgb_lossy.jxl"> +<img src="./resources/3x3_srgb_lossy.jxl" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3a_srgb_lossless-ref.html b/tests/wpt/tests/jpegxl/3x3a_srgb_lossless-ref.html index 75d8ba7452e..1a5ad157df9 100644 --- a/tests/wpt/tests/jpegxl/3x3a_srgb_lossless-ref.html +++ b/tests/wpt/tests/jpegxl/3x3a_srgb_lossless-ref.html @@ -1,4 +1,4 @@ <!DOCTYPE html> <title>JPEG XL test reference</title> -<img src="./resources/3x3a_srgb_lossless.png"> +<img src="./resources/3x3a_srgb_lossless.png" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3a_srgb_lossless.html b/tests/wpt/tests/jpegxl/3x3a_srgb_lossless.html index 1de61a5ba27..47c297fd46f 100644 --- a/tests/wpt/tests/jpegxl/3x3a_srgb_lossless.html +++ b/tests/wpt/tests/jpegxl/3x3a_srgb_lossless.html @@ -1,8 +1,8 @@ <!DOCTYPE html> <title>JPEG XL test</title> -<meta name=fuzzy content="0-4;0-9"> +<meta name=fuzzy content="0-4;0-275625"> <link rel="help" href="https://jpeg.org/jpegxl/"> <link rel="match" href="3x3a_srgb_lossless-ref.html"> <meta name="assert" content="JPEG XL image is rendered correctly"> -<img src="./resources/3x3a_srgb_lossless.jxl"> +<img src="./resources/3x3a_srgb_lossless.jxl" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3a_srgb_lossy-ref.html b/tests/wpt/tests/jpegxl/3x3a_srgb_lossy-ref.html index 3a1c22e8a27..602c3aa9618 100644 --- a/tests/wpt/tests/jpegxl/3x3a_srgb_lossy-ref.html +++ b/tests/wpt/tests/jpegxl/3x3a_srgb_lossy-ref.html @@ -1,4 +1,4 @@ <!DOCTYPE html> <title>JPEG XL test reference</title> -<img src="./resources/3x3a_srgb_lossy.png"> +<img src="./resources/3x3a_srgb_lossy.png" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/jpegxl/3x3a_srgb_lossy.html b/tests/wpt/tests/jpegxl/3x3a_srgb_lossy.html index 59583a11a9a..894b4ddf7bc 100644 --- a/tests/wpt/tests/jpegxl/3x3a_srgb_lossy.html +++ b/tests/wpt/tests/jpegxl/3x3a_srgb_lossy.html @@ -1,8 +1,8 @@ <!DOCTYPE html> <title>JPEG XL test</title> -<meta name=fuzzy content="0-10;0-9"> +<meta name=fuzzy content="0-10;0-275625"> <link rel="help" href="https://jpeg.org/jpegxl/"> <link rel="match" href="3x3a_srgb_lossy-ref.html"> <meta name="assert" content="JPEG XL image is rendered correctly"> -<img src="./resources/3x3a_srgb_lossy.jxl"> +<img src="./resources/3x3a_srgb_lossy.jxl" style="height:525px;image-rendering:crisp-edges;"> diff --git a/tests/wpt/tests/largest-contentful-paint/resources/largest-contentful-paint-helpers.js b/tests/wpt/tests/largest-contentful-paint/resources/largest-contentful-paint-helpers.js index 52f7036466c..d206beaef99 100644 --- a/tests/wpt/tests/largest-contentful-paint/resources/largest-contentful-paint-helpers.js +++ b/tests/wpt/tests/largest-contentful-paint/resources/largest-contentful-paint-helpers.js @@ -40,20 +40,12 @@ function checkImage(entry, expectedUrl, expectedID, expectedSize, timeLowerBound if (options.includes('skip')) { return; } - if (options.includes('renderTimeIs0')) { - assert_equals(entry.renderTime, 0, 'renderTime should be 0'); - assert_between_exclusive(entry.loadTime, timeLowerBound, performance.now(), - 'loadTime should be between the lower bound and the current time'); - assert_approx_equals(entry.startTime, entry.loadTime, 0.001, - 'startTime should be equal to renderTime to the precision of 1 millisecond.'); - } else { - assert_between_exclusive(entry.loadTime, timeLowerBound, entry.renderTime, - 'loadTime should occur between the lower bound and the renderTime'); - assert_greater_than_equal(performance.now(), entry.renderTime, - 'renderTime should occur before the entry is dispatched to the observer.'); - assert_approx_equals(entry.startTime, entry.renderTime, 0.001, - 'startTime should be equal to renderTime to the precision of 1 millisecond.'); - } + assert_between_inclusive(entry.loadTime, timeLowerBound, entry.renderTime, + 'loadTime should occur between the lower bound and the renderTime'); + assert_greater_than_equal(performance.now(), entry.renderTime, + 'renderTime should occur before the entry is dispatched to the observer.'); + assert_approx_equals(entry.startTime, entry.renderTime, 0.001, + 'startTime should be equal to renderTime to the precision of 1 millisecond.'); if (options.includes('sizeLowerBound')) { assert_greater_than(entry.size, expectedSize); } else if (options.includes('approximateSize')) { @@ -72,9 +64,6 @@ function checkImage(entry, expectedUrl, expectedID, expectedSize, timeLowerBound assert_greater_than(entry.firstAnimatedFrameTime, 0, 'firstAnimatedFrameTime should be larger than 0'); } - if (options.includes('animated-zero')) { - assert_equals(entry.firstAnimatedFrameTime, 0, 'firstAnimatedFrameTime should be 0'); - } } const load_and_observe = url => { diff --git a/tests/wpt/tests/lint.ignore b/tests/wpt/tests/lint.ignore index cee60ba906e..ee19f061a74 100644 --- a/tests/wpt/tests/lint.ignore +++ b/tests/wpt/tests/lint.ignore @@ -802,12 +802,6 @@ TESTDRIVER-IN-UNSUPPORTED-TYPE: file-system-access/local_FileSystemWritableFileS TESTDRIVER-IN-UNSUPPORTED-TYPE: file-system-access/showDirectoryPicker-manual.https.html TESTDRIVER-IN-UNSUPPORTED-TYPE: file-system-access/showOpenFilePicker-manual.https.html TESTDRIVER-IN-UNSUPPORTED-TYPE: file-system-access/showSaveFilePicker-manual.https.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/crashtests/chrome-1312699.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/crashtests/content-visibility-crash.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/rendering/backdrop-iframe.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/rendering/backdrop-inherit.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/rendering/backdrop-object.html -TESTDRIVER-IN-UNSUPPORTED-TYPE: fullscreen/rendering/fullscreen-root-fills-page.html TESTDRIVER-IN-UNSUPPORTED-TYPE: html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/crashtests/fieldset-middleclick.html TESTDRIVER-IN-UNSUPPORTED-TYPE: infrastructure/testdriver/click_child_crossorigin.html TESTDRIVER-IN-UNSUPPORTED-TYPE: infrastructure/testdriver/click_child_testdriver.html diff --git a/tests/wpt/tests/media-capabilities/decodingInfo.webrtc.html b/tests/wpt/tests/media-capabilities/decodingInfo-webrtc.any.js index f2839561006..0f3a4fa0f2d 100644 --- a/tests/wpt/tests/media-capabilities/decodingInfo.webrtc.html +++ b/tests/wpt/tests/media-capabilities/decodingInfo-webrtc.any.js @@ -1,8 +1,7 @@ -<!DOCTYPE html> -<title>MediaCapabilities.decodingInfo() for webrtc</title> -<script src=/resources/testharness.js></script> -<script src="/resources/testharnessreport.js"></script> -<script> +// META: timeout=long +'use strict'; + +const isWorkerEnvironment = typeof self.WorkerGlobalScope !== 'undefined'; // Minimal VideoConfiguration that will be allowed per spec. All optional // properties are missing. @@ -154,12 +153,18 @@ const validAudioCodecs = (() => { // exclude these from the test. const excludeList = [ 'audio/CN', 'audio/telephone-event', 'audio/red' ]; const audioCodecs = []; - RTCRtpReceiver.getCapabilities("audio")['codecs'].forEach(codec => { - if (excludeList.indexOf(codec.mimeType) < 0 && - audioCodecs.indexOf(codec.mimeType) < 0) { - audioCodecs.push(codec.mimeType); - } - }); + if (isWorkerEnvironment) { + // Test with one specific codec since RTCRtpReceiver is not exposed to workers. + audioCodecs.push(minimalAudioConfiguration.contentType); + } + else { + RTCRtpReceiver.getCapabilities("audio")['codecs'].forEach(codec => { + if (excludeList.indexOf(codec.mimeType) < 0 && + audioCodecs.indexOf(codec.mimeType) < 0) { + audioCodecs.push(codec.mimeType); + } + }); + } return audioCodecs; })(); @@ -173,7 +178,7 @@ validAudioCodecs.forEach(codec => { }).then(ability => { assert_true(ability.supported); }); -}, "Test that decodingInfo returns supported true for the codec " + codec + " returned by RTCRtpReceiver.getCapabilities()")} +}, "Test that decodingInfo returns supported true for the codec " + codec + (isWorkerEnvironment ? "" : " returned by RTCRtpReceiver.getCapabilities()"))} ); const validVideoCodecs = (() => { @@ -183,17 +188,23 @@ const validVideoCodecs = (() => { 'video/flexfec-03' ]; const videoCodecs = []; - RTCRtpReceiver.getCapabilities("video")['codecs'].forEach(codec => { - if (excludeList.indexOf(codec.mimeType) < 0) { - let mimeType = codec.mimeType; - if ('sdpFmtpLine' in codec) { - mimeType += "; " + codec.sdpFmtpLine; + if (isWorkerEnvironment) { + // Test with one specific codec since RTCRtpReceiver is not exposed to workers. + videoCodecs.push(minimalVideoConfiguration.contentType); + } + else { + RTCRtpReceiver.getCapabilities("video")['codecs'].forEach(codec => { + if (excludeList.indexOf(codec.mimeType) < 0) { + let mimeType = codec.mimeType; + if ('sdpFmtpLine' in codec) { + mimeType += "; " + codec.sdpFmtpLine; + } + if (!(mimeType in videoCodecs)) { + videoCodecs.push(mimeType); + } } - if (!(mimeType in videoCodecs)) { - videoCodecs.push(mimeType); - } - } - }); + }); + } return videoCodecs; })(); @@ -211,7 +222,6 @@ validVideoCodecs.forEach(codec => { }).then(ability => { assert_true(ability.supported); }); -}, "Test that decodingInfo returns supported true for the codec " + codec + " returned by RTCRtpReceiver.getCapabilities()")} +}, "Test that decodingInfo returns supported true for the codec " + codec + (isWorkerEnvironment ? "" : " returned by RTCRtpReceiver.getCapabilities()"))} ); -</script> diff --git a/tests/wpt/tests/media-capabilities/encodingInfo.webrtc.html b/tests/wpt/tests/media-capabilities/encodingInfo-webrtc.any.js index 414b7944f61..635801c9f1a 100644 --- a/tests/wpt/tests/media-capabilities/encodingInfo.webrtc.html +++ b/tests/wpt/tests/media-capabilities/encodingInfo-webrtc.any.js @@ -1,8 +1,7 @@ -<!DOCTYPE html> -<title>MediaCapabilities.encodingInfo() for webrtc</title> -<script src=/resources/testharness.js></script> -<script src="/resources/testharnessreport.js"></script> -<script> +// META: timeout=long +'use strict'; + +const isWorkerEnvironment = typeof self.WorkerGlobalScope !== 'undefined'; // Minimal VideoConfiguration that will be allowed per spec. All optional // properties are missing. @@ -154,12 +153,19 @@ const validAudioCodecs = (() => { // exclude these from the test. const excludeList = [ 'audio/CN', 'audio/telephone-event', 'audio/red' ]; const audioCodecs = []; - RTCRtpSender.getCapabilities("audio")['codecs'].forEach(codec => { - if (excludeList.indexOf(codec.mimeType) < 0 && - audioCodecs.indexOf(codec.mimeType) < 0) { - audioCodecs.push(codec.mimeType); - } - }); + + if (isWorkerEnvironment) { + // Test with one specific codec since RTCRtpSender is not exposed to workers. + audioCodecs.push(minimalAudioConfiguration.contentType); + } + else { + RTCRtpSender.getCapabilities("audio")['codecs'].forEach(codec => { + if (excludeList.indexOf(codec.mimeType) < 0 && + audioCodecs.indexOf(codec.mimeType) < 0) { + audioCodecs.push(codec.mimeType); + } + }); + } return audioCodecs; })(); @@ -173,7 +179,7 @@ validAudioCodecs.forEach(codec => { }).then(ability => { assert_true(ability.supported); }); -}, "Test that encodingInfo returns supported true for the codec " + codec + " returned by RTCRtpSender.getCapabilities()")} +}, "Test that encodingInfo returns supported true for the codec " + codec + (isWorkerEnvironment ? "" : " returned by RTCRtpSender.getCapabilities()"))} ); const validVideoCodecs = (() => { @@ -183,17 +189,23 @@ const validVideoCodecs = (() => { 'video/flexfec-03' ]; const videoCodecs = []; - RTCRtpSender.getCapabilities("video")['codecs'].forEach(codec => { - if (excludeList.indexOf(codec.mimeType) < 0) { - let mimeType = codec.mimeType; - if ('sdpFmtpLine' in codec) { - mimeType += "; " + codec.sdpFmtpLine; - } - if (!(mimeType in videoCodecs)) { - videoCodecs.push(mimeType); + if (isWorkerEnvironment) { + // Test with one specific codec since RTCRtpSender is not exposed to workers. + videoCodecs.push(minimalVideoConfiguration.contentType); + } + else { + RTCRtpSender.getCapabilities("video")['codecs'].forEach(codec => { + if (excludeList.indexOf(codec.mimeType) < 0) { + let mimeType = codec.mimeType; + if ('sdpFmtpLine' in codec) { + mimeType += "; " + codec.sdpFmtpLine; + } + if (!(mimeType in videoCodecs)) { + videoCodecs.push(mimeType); + } } - } - }); + }); + } return videoCodecs; })(); @@ -211,7 +223,6 @@ validVideoCodecs.forEach(codec => { }).then(ability => { assert_true(ability.supported); }); -}, "Test that encodingInfo returns supported true for the codec " + codec + " returned by RTCRtpSender.getCapabilities()")} +}, "Test that encodingInfo returns supported true for the codec " + codec + (isWorkerEnvironment ? "" : " returned by RTCRtpSender.getCapabilities()"))} ); -</script> diff --git a/tests/wpt/tests/navigation-api/focus-reset/resources/helpers.mjs b/tests/wpt/tests/navigation-api/focus-reset/resources/helpers.mjs index 0a8a0439e1c..fd611e80629 100644 --- a/tests/wpt/tests/navigation-api/focus-reset/resources/helpers.mjs +++ b/tests/wpt/tests/navigation-api/focus-reset/resources/helpers.mjs @@ -10,6 +10,7 @@ export function testFocusWasReset(setupFunc, description) { const button = document.body.appendChild(document.createElement("button")); const button2 = document.body.appendChild(document.createElement("button")); + button.tabIndex = 0; button2.tabIndex = 0; t.add_cleanup(() => { button.remove(); diff --git a/tests/wpt/tests/paint-timing/with-first-paint/paint-visited.html b/tests/wpt/tests/paint-timing/with-first-paint/paint-visited.html index c02ea240525..eb61d51eeac 100644 --- a/tests/wpt/tests/paint-timing/with-first-paint/paint-visited.html +++ b/tests/wpt/tests/paint-timing/with-first-paint/paint-visited.html @@ -28,7 +28,7 @@ async_test(function(t) { if (bufferedEntries.length < 2) { t.step_timeout(function() { testPaintEntries(); - }, 20); + }, 100); return; } t.step(function() { diff --git a/tests/wpt/tests/permissions-policy/experimental-features/focus-without-user-activation-default-permissions-policy.tentative.https.sub.html b/tests/wpt/tests/permissions-policy/experimental-features/focus-without-user-activation-default-permissions-policy.tentative.https.sub.html new file mode 100644 index 00000000000..9ca1426040c --- /dev/null +++ b/tests/wpt/tests/permissions-policy/experimental-features/focus-without-user-activation-default-permissions-policy.tentative.https.sub.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<title>Focus without user activation container policy test</title> + +<body> + <script src=/resources/testharness.js></script> + <script src=/resources/testharnessreport.js></script> + <script src=/permissions-policy/resources/permissions-policy.js></script> + <script> + 'use strict'; + var same_origin_src = '/permissions-policy/experimental-features/resources/permissions-policy-focus-without-user-activation.html'; + var cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' + + same_origin_src; + const header = 'Default "focus-without-user-activation" permissions policy [self]'; + async_test(t => { + test_feature_availability( + 'focus-without-user-activation', t, same_origin_src, expect_feature_available_default); + }, header + " allows same-origin iframes."); + + async_test(t => { + test_feature_availability( + 'focus-without-user-activation', t, cross_origin_src, expect_feature_unavailable_default); + }, header + " doesn't allow cross-origin iframes."); + </script> +</body>
\ No newline at end of file diff --git a/tests/wpt/tests/permissions-policy/experimental-features/resources/permissions-policy-focus-without-user-activation.html b/tests/wpt/tests/permissions-policy/experimental-features/resources/permissions-policy-focus-without-user-activation.html new file mode 100644 index 00000000000..c802d6f0699 --- /dev/null +++ b/tests/wpt/tests/permissions-policy/experimental-features/resources/permissions-policy-focus-without-user-activation.html @@ -0,0 +1,11 @@ +<!doctype html> +<script> + 'use strict'; + function post_result(enabled) { + parent.postMessage({ type: 'availability-result', enabled }, "*"); + } + + window.onload = function () { + post_result(document.featurePolicy.allowedFeatures().includes("focus-without-user-activation")); + } +</script>
\ No newline at end of file diff --git a/tests/wpt/tests/pointerevents/pointerevent_sequence_at_implicit_release_on_click.html b/tests/wpt/tests/pointerevents/pointerevent_sequence_at_implicit_release_on_click.html index bfcc8ad54a8..1895765cd55 100644 --- a/tests/wpt/tests/pointerevents/pointerevent_sequence_at_implicit_release_on_click.html +++ b/tests/wpt/tests/pointerevents/pointerevent_sequence_at_implicit_release_on_click.html @@ -29,16 +29,24 @@ } function run() { - var test_pointer_event = setup_pointerevent_test("Event sequence at implicit release on click", [inputSource]); + var test_pointer_event = setup_pointerevent_test("Boundary events are emitted after lostpointercapture", [inputSource]); + var no_extra_event_test = async_test("No extra events are emitted"); on_event(document.getElementById("done"), "click", function() { + var expected_events = "pointerup, lostpointercapture, pointerout, pointerleave"; test_pointer_event.step(function () { - var expected_events = "pointerup, lostpointercapture, pointerout, pointerleave"; - assert_equals(event_log.join(", "), expected_events); + assert_true(event_log.join(", ").startsWith(expected_events)); }); + // Make sure the test finishes after all the input actions are completed. actions_promise.then( () => { + let extra_events = event_log.join(", ").replace(new RegExp(`^${expected_events}(, )?`), ""); test_pointer_event.done(); + + no_extra_event_test.step(() => { + assert_equals(extra_events, ""); + }); + no_extra_event_test.done(); }); }); diff --git a/tests/wpt/tests/pointerevents/pointerevent_styles.css b/tests/wpt/tests/pointerevents/pointerevent_styles.css index 1ee3b0b3965..f5ed4828f69 100644 --- a/tests/wpt/tests/pointerevents/pointerevent_styles.css +++ b/tests/wpt/tests/pointerevents/pointerevent_styles.css @@ -83,7 +83,7 @@ color: white; div { margin: 0em; -padding: 2em; +padding: 1.2em; } #complete-notice { diff --git a/tests/wpt/tests/pointerevents/pointerevent_touch-action-inherit_parent-none_touch.html b/tests/wpt/tests/pointerevents/pointerevent_touch-action-inherit_parent-none_touch.html index d927ed94b32..828864602c4 100644 --- a/tests/wpt/tests/pointerevents/pointerevent_touch-action-inherit_parent-none_touch.html +++ b/tests/wpt/tests/pointerevents/pointerevent_touch-action-inherit_parent-none_touch.html @@ -24,26 +24,16 @@ <body> <h1>Pointer Events: effective touch-action is "none" when parent has "none" and target has "auto"</h1> - <h4 id="desc"> - Try to scroll DOWN then RIGHT from inside blue rectangle. - Tap Complete button under the rectangle when done. - Expectation: no panning - </h4> - <p>Note: this test is for touch-devices only</p> <div class="scroller" id="target0"> <div id="scrollTarget"> Try to scroll DOWN then RIGHT from here. </div> </div> <input type="button" id="btnComplete" value="Complete test"> - <h1>behavior: none</h1> - <div id="complete-notice"> - <p>The following pointer types were detected: - <span id="pointertype-log"></span>.</p> - </div> <div id="log"></div> </body> <script type='text/javascript'> + "use strict"; window.onload = async () => { const target0 = document.getElementById("target0"); const btnComplete = document.getElementById("btnComplete"); @@ -62,9 +52,6 @@ target0.addEventListener("scroll", () => scroll_received = true); - let detected_pointertypes = {}; - add_completion_callback(showPointerTypes); - promise_test(async () => { const button_complete_click = getEvent("click", btnComplete); @@ -89,8 +76,6 @@ "expected scrollLeft 0 in the end of the test"); assert_equals(target0.scrollTop, 0, "expected scrollTop 0 in the end of the test"); - - updateDescriptionComplete(); }, "touch-action attribute test"); }; </script> diff --git a/tests/wpt/tests/pointerevents/pointerevent_touch-action-modified_touch.html b/tests/wpt/tests/pointerevents/pointerevent_touch-action-modified_touch.html index a91022504a7..9f0abd68370 100644 --- a/tests/wpt/tests/pointerevents/pointerevent_touch-action-modified_touch.html +++ b/tests/wpt/tests/pointerevents/pointerevent_touch-action-modified_touch.html @@ -24,10 +24,6 @@ </head> <body> <h1>Deleting touch-action elem after pointerdown has no effect</h1> - <h4 id="desc"> - Try to scroll up/down starting at the green element. Expectation: the - green element would vanish immediately and the content won't scroll. - </h4> <p>Note: this test is for touch-devices only</p> <div class="box"></div> <div class="box"></div> @@ -36,14 +32,14 @@ <div class="box"></div> </body> <script> + "use strict"; let target = document.getElementById("target"); let pointercancel_received = false; - document.body.addEventListener("pointerdown", () => target.parentElement.removeChild(target)); - document.body.addEventListener("pointercancel", () => pointercancel_received = true); - - let detected_pointertypes = {}; - add_completion_callback(showPointerTypes); + document.body.addEventListener("pointerdown", + () => target.parentElement.removeChild(target)); + document.body.addEventListener("pointercancel", + () => pointercancel_received = true); promise_test(async () => { let pointerup_event = getEvent("pointerup", document.body); @@ -52,9 +48,7 @@ await pointerup_event; assert_false(pointercancel_received, - "a pointercancel event is unexpected because there should be no scrolling"); - - updateDescriptionComplete(); - }, "Deleting touch-action elem after pointerdown"); + "a pointercancel event is unexpected"); + }, "No scrolling after deleting touch-action:none elem after pointerdown"); </script> </html> diff --git a/tests/wpt/tests/push-api/supported-encodings.https.any.js b/tests/wpt/tests/push-api/supported-encodings.https.any.js new file mode 100644 index 00000000000..45b5ed1cba4 --- /dev/null +++ b/tests/wpt/tests/push-api/supported-encodings.https.any.js @@ -0,0 +1,26 @@ +// META: global=window,worker + +"use strict" +// (for FrozenArray assign test) + +test(() => { + assert_true( + PushManager.supportedContentEncodings.includes("aes128gcm"), + "PushManager.supportedContentEncodings must include aes128gcm" + ); +}, "aes128gcm must be supported"); + +test(() => { + assert_throws_js( + TypeError, + () => PushManager.supportedContentEncodings[0] = "aes1024gcm", + "supportedContentEncodings must be frozen" + ); + + // Intentionally not using assert_array_equals to check same-object + assert_equals( + PushManager.supportedContentEncodings, + PushManager.supportedContentEncodings, + "supportedContentEncodings must be cached" + ); +}, "supportedContentEncodings must be FrozenArray") diff --git a/tests/wpt/tests/resize-observer/resize-loop-cancel-error-notification-console-manual.tentative.html b/tests/wpt/tests/resize-observer/resize-loop-cancel-error-notification-console-manual.tentative.html new file mode 100644 index 00000000000..2c0fe2c0f28 --- /dev/null +++ b/tests/wpt/tests/resize-observer/resize-loop-cancel-error-notification-console-manual.tentative.html @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<title>ResizeObserver - Console Logging Manual Test</title> +<meta name="assert" content="Canceled resize loop error notifications should not appear in the console."> +<link rel="help" href="https://www.w3.org/TR/resize-observer/#deliver-resize-loop-error-notification"> + +<p>Open the console inside the developer tools. It should contain no entries about ResizeObserver.</p> + +<div id="resizer" style="width: 100px; height: 100px;"></div> +<script> + // Cancel all window error events. + window.onerror = () => true; + + const observer = new ResizeObserver(entries => { + resizer.style.width = '200px'; + }); + observer.observe(resizer); +</script> diff --git a/tests/wpt/tests/resize-observer/resize-loop-error-notification-console-manual.tentative.html b/tests/wpt/tests/resize-observer/resize-loop-error-notification-console-manual.tentative.html new file mode 100644 index 00000000000..ef7dba83866 --- /dev/null +++ b/tests/wpt/tests/resize-observer/resize-loop-error-notification-console-manual.tentative.html @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<title>ResizeObserver - Console Logging Manual Test</title> +<meta name="assert" content="The resize loop error notification should appear in the console."> +<link rel="help" href="https://www.w3.org/TR/resize-observer/#deliver-resize-loop-error-notification"> + +<p>Open the console inside the developer tools. It should contain one entry with contents:</p> +<p><code>ResizeObserver loop completed with undelivered notifications.</code></p> + +<div id="resizer" style="width: 100px; height: 100px;"></div> +<script> + const observer = new ResizeObserver(entries => { + resizer.style.width = '200px'; + }); + observer.observe(resizer); +</script> diff --git a/tests/wpt/tests/resources/check-layout.js b/tests/wpt/tests/resources/check-layout.js deleted file mode 100644 index 8634481497d..00000000000 --- a/tests/wpt/tests/resources/check-layout.js +++ /dev/null @@ -1,245 +0,0 @@ -(function() { - -function insertAfter(nodeToAdd, referenceNode) -{ - if (referenceNode == document.body) { - document.body.appendChild(nodeToAdd); - return; - } - - if (referenceNode.nextSibling) - referenceNode.parentNode.insertBefore(nodeToAdd, referenceNode.nextSibling); - else - referenceNode.parentNode.appendChild(nodeToAdd); -} - -function positionedAncestor(node) -{ - var ancestor = node.parentNode; - while (getComputedStyle(ancestor).position == 'static') - ancestor = ancestor.parentNode; - return ancestor; -} - -function checkSubtreeExpectedValues(parent, failures) -{ - var checkedLayout = checkExpectedValues(parent, failures); - Array.prototype.forEach.call(parent.childNodes, function(node) { - checkedLayout |= checkSubtreeExpectedValues(node, failures); - }); - return checkedLayout; -} - -function checkAttribute(output, node, attribute) -{ - var result = node.getAttribute && node.getAttribute(attribute); - output.checked |= !!result; - return result; -} - -function checkExpectedValues(node, failures) -{ - var output = { checked: false }; - var expectedWidth = checkAttribute(output, node, "data-expected-width"); - if (expectedWidth) { - if (isNaN(expectedWidth) || Math.abs(node.offsetWidth - expectedWidth) >= 1) - failures.push("Expected " + expectedWidth + " for width, but got " + node.offsetWidth + ". "); - } - - var expectedHeight = checkAttribute(output, node, "data-expected-height"); - if (expectedHeight) { - if (isNaN(expectedHeight) || Math.abs(node.offsetHeight - expectedHeight) >= 1) - failures.push("Expected " + expectedHeight + " for height, but got " + node.offsetHeight + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-offset-x"); - if (expectedOffset) { - if (isNaN(expectedOffset) || Math.abs(node.offsetLeft - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for offsetLeft, but got " + node.offsetLeft + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-offset-y"); - if (expectedOffset) { - if (isNaN(expectedOffset) || Math.abs(node.offsetTop - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for offsetTop, but got " + node.offsetTop + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-positioned-offset-x"); - if (expectedOffset) { - var actualOffset = node.getBoundingClientRect().left - positionedAncestor(node).getBoundingClientRect().left; - if (isNaN(expectedOffset) || Math.abs(actualOffset - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for getBoundingClientRect().left offset, but got " + actualOffset + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-positioned-offset-y"); - if (expectedOffset) { - var actualOffset = node.getBoundingClientRect().top - positionedAncestor(node).getBoundingClientRect().top; - if (isNaN(expectedOffset) || Math.abs(actualOffset - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for getBoundingClientRect().top offset, but got " + actualOffset + ". "); - } - - var expectedWidth = checkAttribute(output, node, "data-expected-client-width"); - if (expectedWidth) { - if (isNaN(expectedWidth) || Math.abs(node.clientWidth - expectedWidth) >= 1) - failures.push("Expected " + expectedWidth + " for clientWidth, but got " + node.clientWidth + ". "); - } - - var expectedHeight = checkAttribute(output, node, "data-expected-client-height"); - if (expectedHeight) { - if (isNaN(expectedHeight) || Math.abs(node.clientHeight - expectedHeight) >= 1) - failures.push("Expected " + expectedHeight + " for clientHeight, but got " + node.clientHeight + ". "); - } - - var expectedWidth = checkAttribute(output, node, "data-expected-scroll-width"); - if (expectedWidth) { - if (isNaN(expectedWidth) || Math.abs(node.scrollWidth - expectedWidth) >= 1) - failures.push("Expected " + expectedWidth + " for scrollWidth, but got " + node.scrollWidth + ". "); - } - - var expectedHeight = checkAttribute(output, node, "data-expected-scroll-height"); - if (expectedHeight) { - if (isNaN(expectedHeight) || Math.abs(node.scrollHeight - expectedHeight) >= 1) - failures.push("Expected " + expectedHeight + " for scrollHeight, but got " + node.scrollHeight + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-total-x"); - if (expectedOffset) { - var totalLeft = node.clientLeft + node.offsetLeft; - if (isNaN(expectedOffset) || Math.abs(totalLeft - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for clientLeft+offsetLeft, but got " + totalLeft + ", clientLeft: " + node.clientLeft + ", offsetLeft: " + node.offsetLeft + ". "); - } - - var expectedOffset = checkAttribute(output, node, "data-total-y"); - if (expectedOffset) { - var totalTop = node.clientTop + node.offsetTop; - if (isNaN(expectedOffset) || Math.abs(totalTop - expectedOffset) >= 1) - failures.push("Expected " + expectedOffset + " for clientTop+offsetTop, but got " + totalTop + ", clientTop: " + node.clientTop + ", + offsetTop: " + node.offsetTop + ". "); - } - - var expectedDisplay = checkAttribute(output, node, "data-expected-display"); - if (expectedDisplay) { - var actualDisplay = getComputedStyle(node).display; - if (actualDisplay != expectedDisplay) - failures.push("Expected " + expectedDisplay + " for display, but got " + actualDisplay + ". "); - } - - var expectedPaddingTop = checkAttribute(output, node, "data-expected-padding-top"); - if (expectedPaddingTop) { - var actualPaddingTop = getComputedStyle(node).paddingTop; - // Trim the unit "px" from the output. - actualPaddingTop = actualPaddingTop.substring(0, actualPaddingTop.length - 2); - if (actualPaddingTop != expectedPaddingTop) - failures.push("Expected " + expectedPaddingTop + " for padding-top, but got " + actualPaddingTop + ". "); - } - - var expectedPaddingBottom = checkAttribute(output, node, "data-expected-padding-bottom"); - if (expectedPaddingBottom) { - var actualPaddingBottom = getComputedStyle(node).paddingBottom; - // Trim the unit "px" from the output. - actualPaddingBottom = actualPaddingBottom.substring(0, actualPaddingBottom.length - 2); - if (actualPaddingBottom != expectedPaddingBottom) - failures.push("Expected " + expectedPaddingBottom + " for padding-bottom, but got " + actualPaddingBottom + ". "); - } - - var expectedPaddingLeft = checkAttribute(output, node, "data-expected-padding-left"); - if (expectedPaddingLeft) { - var actualPaddingLeft = getComputedStyle(node).paddingLeft; - // Trim the unit "px" from the output. - actualPaddingLeft = actualPaddingLeft.substring(0, actualPaddingLeft.length - 2); - if (actualPaddingLeft != expectedPaddingLeft) - failures.push("Expected " + expectedPaddingLeft + " for padding-left, but got " + actualPaddingLeft + ". "); - } - - var expectedPaddingRight = checkAttribute(output, node, "data-expected-padding-right"); - if (expectedPaddingRight) { - var actualPaddingRight = getComputedStyle(node).paddingRight; - // Trim the unit "px" from the output. - actualPaddingRight = actualPaddingRight.substring(0, actualPaddingRight.length - 2); - if (actualPaddingRight != expectedPaddingRight) - failures.push("Expected " + expectedPaddingRight + " for padding-right, but got " + actualPaddingRight + ". "); - } - - var expectedMarginTop = checkAttribute(output, node, "data-expected-margin-top"); - if (expectedMarginTop) { - var actualMarginTop = getComputedStyle(node).marginTop; - // Trim the unit "px" from the output. - actualMarginTop = actualMarginTop.substring(0, actualMarginTop.length - 2); - if (actualMarginTop != expectedMarginTop) - failures.push("Expected " + expectedMarginTop + " for margin-top, but got " + actualMarginTop + ". "); - } - - var expectedMarginBottom = checkAttribute(output, node, "data-expected-margin-bottom"); - if (expectedMarginBottom) { - var actualMarginBottom = getComputedStyle(node).marginBottom; - // Trim the unit "px" from the output. - actualMarginBottom = actualMarginBottom.substring(0, actualMarginBottom.length - 2); - if (actualMarginBottom != expectedMarginBottom) - failures.push("Expected " + expectedMarginBottom + " for margin-bottom, but got " + actualMarginBottom + ". "); - } - - var expectedMarginLeft = checkAttribute(output, node, "data-expected-margin-left"); - if (expectedMarginLeft) { - var actualMarginLeft = getComputedStyle(node).marginLeft; - // Trim the unit "px" from the output. - actualMarginLeft = actualMarginLeft.substring(0, actualMarginLeft.length - 2); - if (actualMarginLeft != expectedMarginLeft) - failures.push("Expected " + expectedMarginLeft + " for margin-left, but got " + actualMarginLeft + ". "); - } - - var expectedMarginRight = checkAttribute(output, node, "data-expected-margin-right"); - if (expectedMarginRight) { - var actualMarginRight = getComputedStyle(node).marginRight; - // Trim the unit "px" from the output. - actualMarginRight = actualMarginRight.substring(0, actualMarginRight.length - 2); - if (actualMarginRight != expectedMarginRight) - failures.push("Expected " + expectedMarginRight + " for margin-right, but got " + actualMarginRight + ". "); - } - - return output.checked; -} - -window.checkLayout = function(selectorList, outputContainer) -{ - var result = true; - if (!selectorList) { - document.body.appendChild(document.createTextNode("You must provide a CSS selector of nodes to check.")); - return; - } - var nodes = document.querySelectorAll(selectorList); - nodes = Array.prototype.slice.call(nodes); - nodes.reverse(); - var checkedLayout = false; - Array.prototype.forEach.call(nodes, function(node) { - var failures = []; - checkedLayout |= checkExpectedValues(node.parentNode, failures); - checkedLayout |= checkSubtreeExpectedValues(node, failures); - - var container = node.parentNode.className == 'container' ? node.parentNode : node; - - var pre = document.createElement('pre'); - if (failures.length) { - pre.className = 'FAIL'; - result = false; - } - pre.appendChild(document.createTextNode(failures.length ? "FAIL:\n" + failures.join('\n') + '\n\n' + container.outerHTML : "PASS")); - - var referenceNode = container; - if (outputContainer) { - if (!outputContainer.lastChild) { - // Inserting a text node so we have something to insertAfter. - outputContainer.textContent = " "; - } - referenceNode = outputContainer.lastChild; - } - insertAfter(pre, referenceNode); - }); - - if (!checkedLayout) { - document.body.appendChild(document.createTextNode("FAIL: No valid data-* attributes found in selector list : " + selectorList)); - return false; - } - - return result; -} - -})(); diff --git a/tests/wpt/tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html b/tests/wpt/tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html index ceb9a2ca3ff..3a2b3571147 100644 --- a/tests/wpt/tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html +++ b/tests/wpt/tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html @@ -62,8 +62,8 @@ window.onload = function() { </script> <style> .scroll-section { - /* 1000px margin on top and bottom so only one section can be in view. */ - margin: 1000px 0px; + /* 100vh margin on top and bottom so only one section can be in view. */ + margin: 100vh 0px; } #hidden { visibility: hidden; diff --git a/tests/wpt/tests/shared-storage-selecturl-limit/resources/select-url-saved-query-multi-frame-inner.https.sub.html b/tests/wpt/tests/shared-storage-selecturl-limit/resources/select-url-saved-query-multi-frame-inner.https.sub.html new file mode 100644 index 00000000000..549eec0fbfb --- /dev/null +++ b/tests/wpt/tests/shared-storage-selecturl-limit/resources/select-url-saved-query-multi-frame-inner.https.sub.html @@ -0,0 +1,98 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +async function init() { + const url = new URL(location.href); + const queryName = url.searchParams.get("query") ? + url.searchParams.get("query") : ""; + const mockResult = url.searchParams.get("mockresult") ? + parseInt(url.searchParams.get("mockresult")) : 1; + const innerKey = token(); + let parentOrOpener = window.opener || window.parent; + + // Note that we have set the site page bit limit to 3 and the overall page + // bit limit to 6. A single saved query with 8 URLs (i.e. log2(8) = 3 bits) + // will be permitted by a site's page budget, plus re-uses of the saved + // query. Two saved queries with 8 URLs (and their re-uses) will be + // permitted by the overall page budget. + const numUrls = 8; + const urls = generateUrls(numUrls, "/shared-storage/resources/frame", + [innerKey]); + + await sharedStorage.worklet.addModule( + "/shared-storage/resources/simple-module.js"); + + function processSavedQuery(optionalData = {}) { + return sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: optionalData, keepAlive: true, resolveToConfig: true, + savedQuery: queryName}); + } + + const expected_result = `frame${mockResult}_loaded`; + const message = {selectURLStatus: `success`, origin: `${location.origin}`, + query: queryName, mockResultIndex: mockResult}; + + let config0 = await processSavedQuery({'mockResult': mockResult}); + assert_true(config0 instanceof FencedFrameConfig); + attachFencedFrame(config0, 'opaque-ads'); + try { + const result0 = await nextValueFromServer(innerKey); + assert_equals(result0, expected_result, + `for origin ${location.origin} when budget should remain;`); + } catch (error) { + message.selectURLStatus = `${error}`; + parentOrOpener.postMessage(message, "*"); + return; + } + + // Either the per-site per-pageload bit limit or the overall per-pageload + // bit limit for `selectURL()` has been reached. The next non-saved-query + // call should return the default URL. + let config1 = await sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: {'mockResult': mockResult}, keepAlive: true, + resolveToConfig: true}); + assert_true(config1 instanceof FencedFrameConfig); + attachFencedFrame(config1, 'opaque-ads'); + try { + const result1 = await nextValueFromServer(innerKey); + assert_equals(result1, "frame0_loaded", + `for origin ${location.origin} when budget should be exhausted;`); + } catch (error) { + message.selectURLStatus = `${error}`; + parentOrOpener.postMessage(message, "*"); + return; + } + + // Query should be saved and not cost any budget. + let config2 = await processSavedQuery(); + assert_true(config2 instanceof FencedFrameConfig); + attachFencedFrame(config2, 'opaque-ads'); + try { + const result2 = await nextValueFromServer(innerKey); + assert_equals(result2, expected_result, + `for origin ${location.origin} when budget should remain` + + ` for saved query ${queryName}.`); + } catch (error) { + message.selectURLStatus = `${error}`; + parentOrOpener.postMessage(message, "*"); + return; + } + + // No errors were caught, so this portion of the test succeeded. + parentOrOpener.postMessage(message, "*"); +} + +init(); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-async.tentative.https.sub.html b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-async.tentative.https.sub.html new file mode 100644 index 00000000000..f0d35f658b1 --- /dev/null +++ b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-async.tentative.https.sub.html @@ -0,0 +1,72 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +promise_test(async () => { + const ancestorKey = token(); + + // Note that we have set the site page bit limit to 3 and the overall page + // bit limit to 6. A single saved query with 8 URLs (i.e. log2(8) = 3 bits) + // will be permitted by the site's page budget, plus re-uses of the saved + // query. + const numUrls = 8; + const urls = generateUrls(numUrls, "/shared-storage/resources/frame", + [ancestorKey]); + + await sharedStorage.worklet.addModule( + "/shared-storage/resources/simple-module.js"); + + function processSavedQuery() { + return sharedStorage.selectURL( + "test-slow-url-selection-operation", urls, + {data: {'mockResult': 1}, keepAlive: true, resolveToConfig: true, + savedQuery: "query"}); + } + + // Start initial query. + const savedQueryPromise = processSavedQuery(); + + // This query will be received before the initial query finishes processing. + let config0 = await processSavedQuery(); + assert_true(config0 instanceof FencedFrameConfig); + attachFencedFrame(config0, 'opaque-ads'); + const result0 = await nextValueFromServer(ancestorKey); + assert_equals(result0, "frame1_loaded", 'when budget should remain;'); + + // Wait for the initial query to finish processing. + let config1 = await savedQueryPromise; + assert_true(config1 instanceof FencedFrameConfig); + attachFencedFrame(config1, 'opaque-ads'); + const result1 = await nextValueFromServer(ancestorKey); + assert_equals(result1, "frame1_loaded", 'when budget should not be charged;'); + + // The per-site per-pageload bit limit for `selectURL()` has been + // reached. The next call that doesn't reuse a query should return the + // default URL. + let config2 = await sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: {'mockResult': 1}, keepAlive: true, resolveToConfig: true}); + assert_true(config2 instanceof FencedFrameConfig); + attachFencedFrame(config2, 'opaque-ads'); + const result2 = await nextValueFromServer(ancestorKey); + assert_equals(result2, "frame0_loaded", 'when budget should be exhausted;'); + + // Reuse the saved query after processing is finished. + let config3 = await processSavedQuery();; + assert_true(config3 instanceof FencedFrameConfig); + attachFencedFrame(config3, 'opaque-ads'); + const result3 = await nextValueFromServer(ancestorKey); + assert_equals(result3, "frame1_loaded", + 'when budget still should not be charged;'); +}, 'selectURL() saved query does not deduct budget on re-use, even if the ' + + 'initial query has not yet resolved.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-different-operation.tentative.https.sub.html b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-different-operation.tentative.https.sub.html new file mode 100644 index 00000000000..aec53bfccfe --- /dev/null +++ b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-different-operation.tentative.https.sub.html @@ -0,0 +1,50 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +promise_test(async () => { + const ancestorKey = token(); + + // Note that we have set the site page bit limit to 3 and the overall page + // bit limit to 6. A single saved query with 8 URLs (i.e. log2(8) = 3 bits) + // will be permitted by the site's page budget, plus re-uses of the saved + // query. + const numUrls = 8; + const urls = generateUrls(numUrls, "/shared-storage/resources/frame", + [ancestorKey]); + + await sharedStorage.worklet.addModule( + "/shared-storage/resources/simple-module.js"); + + let config = await sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: {'mockResult': 1}, keepAlive: true, resolveToConfig: true, + savedQuery: "query"}); + assert_true(config instanceof FencedFrameConfig); + attachFencedFrame(config, 'opaque-ads'); + const result = await nextValueFromServer(ancestorKey); + assert_equals(result, "frame1_loaded", + `when budget should remain;`); + + // The per-site per-pageload bit limit for `selectURL()` has been + // reached. No previously saved query can be retrieved for operation + // "test-url-selection-operation-2". The following call should return + // the default URL. + let config1 = await sharedStorage.selectURL( + "test-url-selection-operation-2", urls, + {data: {'mockResult': 2}, resolveToConfig: true, savedQuery: "query"}); + assert_true(config1 instanceof FencedFrameConfig); + attachFencedFrame(config1, 'opaque-ads'); + const result1 = await nextValueFromServer(ancestorKey); + assert_equals(result1, "frame0_loaded", 'when budget should be exhausted;'); +}, 'selectURL() saved query not reused across different operations'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-multi-frame.tentative.https.sub.html b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-multi-frame.tentative.https.sub.html new file mode 100644 index 00000000000..c33e1d346aa --- /dev/null +++ b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query-multi-frame.tentative.https.sub.html @@ -0,0 +1,49 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +promise_test(async () => { + // Note that we have set the site page bit limit to 3 and the overall page + // bit limit to 6. A single saved query with 8 URLs (i.e. log2(8) = 3 bits) + // will be permitted by a site's page budget, plus re-uses of the saved + // query. Two saved queries with 8 URLs (and their re-uses) will be + // permitted by the overall page budget. + const queryKey = "query"; + const mockResultKey = "mockresult"; + + let url0 = new URL( + "/shared-storage-selecturl-limit/" + + "resources/select-url-saved-query-multi-frame-inner.https.sub.html", + location.href); + + url0.searchParams.append(queryKey, "query"); + url0.searchParams.append(mockResultKey, "1"); + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // The same origin can re-use the saved query with ths same name "query". + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // The same saved query name "query" will refer to a different query when + // used by a different origin, as evidenced by having a different index + // result. Set a new index result for the iframe to send to selectURL. + const crossOrigin = get_host_info().HTTPS_NOTSAMESITE_ORIGIN; + let url1 = updateUrlToUseNewOrigin(url0, crossOrigin); + url1.searchParams.delete(mockResultKey); + url1.searchParams.append(mockResultKey, "2"); + await attachIFrameWithEventListenerForSelectURLStatus(url1); + + // `crossOrigin` can re-use its own query from a separate frame. + await attachIFrameWithEventListenerForSelectURLStatus(url1); + +}, 'selectURL() with saved queries across mutliple frames.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query.tentative.https.sub.html b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query.tentative.https.sub.html new file mode 100644 index 00000000000..0c33bd74fe9 --- /dev/null +++ b/tests/wpt/tests/shared-storage-selecturl-limit/select-url-saved-query.tentative.https.sub.html @@ -0,0 +1,62 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +promise_test(async () => { + const ancestorKey = token(); + + // Note that we have set the site page bit limit to 3 and the overall page + // bit limit to 6. A single saved query with 8 URLs (i.e. log2(8) = 3 bits) + // will be permitted by the site's page budget, plus re-uses of the saved + // query. + const numUrls = 8; + const urls = generateUrls(numUrls, "/shared-storage/resources/frame", + [ancestorKey]); + + await sharedStorage.worklet.addModule( + "/shared-storage/resources/simple-module.js"); + + function processSavedQuery(optionalData = {}) { + return sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: optionalData, keepAlive: true, resolveToConfig: true, + savedQuery: "query"}); + } + + let config0 = await processSavedQuery({'mockResult': 1}); + assert_true(config0 instanceof FencedFrameConfig); + attachFencedFrame(config0, 'opaque-ads'); + const result0 = await nextValueFromServer(ancestorKey); + assert_equals(result0, "frame1_loaded", + `when budget should remain;`); + + // The per-site per-pageload bit limit for `selectURL()` has been + // reached, but a saved query should not trigger a page-budget charge. + // Moreover, index 1 should be retrieved even though we omit providing + // `data: {'mockResult': 1}` here. + let config1 = await processSavedQuery();; + assert_true(config1 instanceof FencedFrameConfig); + attachFencedFrame(config1, 'opaque-ads'); + const result1 = await nextValueFromServer(ancestorKey); + assert_equals(result1, "frame1_loaded", 'when budget should not be charged;'); + + // The per-site per-pageload bit limit for `selectURL()` has been + // reached. The next call should return the default URL. + let config2 = await sharedStorage.selectURL( + "test-url-selection-operation", urls, + {data: {'mockResult': 1}, resolveToConfig: true}); + assert_true(config2 instanceof FencedFrameConfig); + attachFencedFrame(config2, 'opaque-ads'); + const result2 = await nextValueFromServer(ancestorKey); + assert_equals(result2, "frame0_loaded", 'when budget should be exhausted;'); +}, 'selectURL() saved query does not deduct budget on re-use'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/resources/erroneous-function-module.js b/tests/wpt/tests/shared-storage/resources/erroneous-function-module.js new file mode 100644 index 00000000000..6d463055255 --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/erroneous-function-module.js @@ -0,0 +1,24 @@ +// Copyright 2024 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +class TestURLSelectionOperation { + async run(urls, data) { + await sharedStorage.append('run-attempt', '1'); + undefinedVariable; + return -1; + } +} + +class VerifyRunAttempts { + async run(urls, data) { + const attempts = await sharedStorage.get('run-attempt'); + if (!attempts) { + return -1; + } + return attempts.length; + } +} + +register('test-url-selection-operation', TestURLSelectionOperation); +register('verify-run-attempts', VerifyRunAttempts); diff --git a/tests/wpt/tests/shared-storage/resources/frame2.html b/tests/wpt/tests/shared-storage/resources/frame2.html new file mode 100644 index 00000000000..bbbc067ce01 --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame2.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html> +<script src="/fenced-frame/resources/utils.js"></script> +<body> +<script> +async function init() { + const [ancestor_key] = parseKeylist(); + writeValueToServer(ancestor_key, "frame2_loaded"); +} + +init(); +</script> +</body> +</html> diff --git a/tests/wpt/tests/shared-storage/resources/frame2.html.headers b/tests/wpt/tests/shared-storage/resources/frame2.html.headers new file mode 100644 index 00000000000..1b63235b7cd --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame2.html.headers @@ -0,0 +1 @@ +Supports-Loading-Mode: fenced-frame diff --git a/tests/wpt/tests/shared-storage/resources/frame3.html b/tests/wpt/tests/shared-storage/resources/frame3.html new file mode 100644 index 00000000000..e12a2ad909a --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame3.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html> +<script src="/fenced-frame/resources/utils.js"></script> +<body> +<script> +async function init() { + const [ancestor_key] = parseKeylist(); + writeValueToServer(ancestor_key, "frame3_loaded"); +} + +init(); +</script> +</body> +</html> diff --git a/tests/wpt/tests/shared-storage/resources/frame3.html.headers b/tests/wpt/tests/shared-storage/resources/frame3.html.headers new file mode 100644 index 00000000000..1b63235b7cd --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame3.html.headers @@ -0,0 +1 @@ +Supports-Loading-Mode: fenced-frame diff --git a/tests/wpt/tests/shared-storage/resources/frame4.html b/tests/wpt/tests/shared-storage/resources/frame4.html new file mode 100644 index 00000000000..716e803da0a --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame4.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html> +<script src="/fenced-frame/resources/utils.js"></script> +<body> +<script> +async function init() { + const [ancestor_key] = parseKeylist(); + writeValueToServer(ancestor_key, "frame4_loaded"); +} + +init(); +</script> +</body> +</html> diff --git a/tests/wpt/tests/shared-storage/resources/frame4.html.headers b/tests/wpt/tests/shared-storage/resources/frame4.html.headers new file mode 100644 index 00000000000..1b63235b7cd --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/frame4.html.headers @@ -0,0 +1 @@ +Supports-Loading-Mode: fenced-frame diff --git a/tests/wpt/tests/shared-storage/resources/select-url-saved-query-inner.https.sub.html b/tests/wpt/tests/shared-storage/resources/select-url-saved-query-inner.https.sub.html new file mode 100644 index 00000000000..9d5efe388d0 --- /dev/null +++ b/tests/wpt/tests/shared-storage/resources/select-url-saved-query-inner.https.sub.html @@ -0,0 +1,76 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +async function init() { + const url = new URL(location.href); + const queryName = url.searchParams.get("query") ? + url.searchParams.get("query") : ""; + const mockResult = url.searchParams.get("mockresult") ? + parseInt(url.searchParams.get("mockresult")) : 1; + const numUrls = url.searchParams.get("urlcount") ? + parseInt(url.searchParams.get("urlcount")) : 8; + const moduleName = url.searchParams.get("module") ? + url.searchParams.get("module") : "simple-module"; + const operationName = url.searchParams.get("operation") ? + url.searchParams.get("operation") : "test-url-selection-operation"; + const expectSaved = url.searchParams.get("expectsaved") ? + (url.searchParams.get("expectsaved") !== "false") : false; + const expectSuccess = url.searchParams.get("expectsuccess") ? + (url.searchParams.get("expectsuccess") !== "false") : true; + const innerKey = token(); + let parentOrOpener = window.opener || window.parent; + + // Note that we have set the site page bit limit to 6 and the overall page + // bit limit to 12. + const urls = generateUrls(numUrls, "/shared-storage/resources/frame", + [innerKey]); + + await sharedStorage.worklet.addModule( + `/shared-storage/resources/${moduleName}.js`); + + function processSavedQuery(optionalData) { + return sharedStorage.selectURL( + operationName, urls, + {data: optionalData, resolveToConfig: true, savedQuery: queryName}); + } + + const expected_result = expectSuccess ? `frame${mockResult}_loaded` : + `frame0_loaded`; + let frameMessage = {selectURLStatus: `success`, origin: `${location.origin}`, + query: queryName, mockResultIndex: mockResult, + module: moduleName, operation: operationName, + urlCount: numUrls, savedExpected: expectSaved, + successExpected: expectSuccess}; + + // When we expect the query to be saved, omit specfying the index to return + // in the data passed to `selectURL`, so that we can see that this data is + // not relevant in the saved case. + const queryData = expectSaved ? {} : {'mockResult': mockResult}; + let config0 = await processSavedQuery(queryData); + assert_true(config0 instanceof FencedFrameConfig); + attachFencedFrame(config0, 'opaque-ads'); + try { + const result0 = await nextValueFromServer(innerKey); + assert_equals(result0, expected_result); + } catch (error) { + frameMessage.selectURLStatus = `${error}`; + parentOrOpener.postMessage(frameMessage, "*"); + return; + } + + // No errors were caught, so this portion of the test succeeded. + parentOrOpener.postMessage(frameMessage, "*"); +} + +init(); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/resources/simple-module.js b/tests/wpt/tests/shared-storage/resources/simple-module.js index eeb0ce95b04..e639f470008 100644 --- a/tests/wpt/tests/shared-storage/resources/simple-module.js +++ b/tests/wpt/tests/shared-storage/resources/simple-module.js @@ -25,6 +25,27 @@ class TestURLSelectionOperation { } } +class TestURLSelectionOperationTwo { + async run(urls, data) { + if (data && data.hasOwnProperty('mockResult')) { + return data['mockResult']; + } + + return -1; + } +} + +class TestSlowURLSelectionOperation { + async run(urls, data) { + await busyWaitMs(100); + if (data && data.hasOwnProperty('mockResult')) { + return data['mockResult']; + } + + return -1; + } +} + class IncrementGlobalVariableAndReturnOriginalValueOperation { async run(urls, data) { return globalVar++; @@ -102,6 +123,8 @@ class GetWaitIncrementWithinLockOperation { } register('test-url-selection-operation', TestURLSelectionOperation); +register('test-url-selection-operation-2', TestURLSelectionOperationTwo); +register('test-slow-url-selection-operation', TestSlowURLSelectionOperation); register('increment-global-variable-and-return-original-value-operation', IncrementGlobalVariableAndReturnOriginalValueOperation); register('verify-key-value', VerifyKeyValue); diff --git a/tests/wpt/tests/shared-storage/resources/util.js b/tests/wpt/tests/shared-storage/resources/util.js index 09eb45c591b..b1456fc01db 100644 --- a/tests/wpt/tests/shared-storage/resources/util.js +++ b/tests/wpt/tests/shared-storage/resources/util.js @@ -193,3 +193,25 @@ function checkInterceptedUrls(worker, expectedRequests) { JSON.stringify(actualRequests), JSON.stringify(expectedRequests)); }); } + +function attachIFrameWithEventListenerForSelectURLStatus(url) { + const frame = document.createElement('iframe'); + frame.src = url; + + const promise = new Promise((resolve, reject) => { + window.addEventListener('message', async function handler(evt) { + if (evt.source === frame.contentWindow && evt.data.selectURLStatus) { + document.body.removeChild(frame); + window.removeEventListener('message', handler); + if (evt.data.selectURLStatus === 'success') { + resolve(evt.data); + } else { + reject(new Error(JSON.stringify(evt.data))); + } + } + }); + }); + + document.body.appendChild(frame); + return promise; +} diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-cross-origin-multi-query.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-cross-origin-multi-query.tentative.https.sub.html new file mode 100644 index 00000000000..7738d90fa69 --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-cross-origin-multi-query.tentative.https.sub.html @@ -0,0 +1,67 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const operationNameKey = "operation"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + const crossOrigin = 'https://{{domains[www]}}:{{ports[https][0]}}'; + let url0 = new URL(crossOrigin + + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // Initiate a query to be saved. + url0.searchParams.append(queryKey, "query0"); + url0.searchParams.append(mockResultKey, "2"); + url0.searchParams.append(moduleNameKey, "simple-module"); + url0.searchParams.append(operationNameKey, "test-slow-url-selection-operation"); + url0.searchParams.append(urlCountKey, "4"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "true"); + const promise0 = attachIFrameWithEventListenerForSelectURLStatus(url0); + + // Initiate a second query to be saved without waiting for the first. + let url1 = url0; + url1.searchParams.delete(queryKey); + url1.searchParams.append(queryKey, "query1"); + url1.searchParams.delete(mockResultKey); + url1.searchParams.append(mockResultKey, "1"); + const promise1 = attachIFrameWithEventListenerForSelectURLStatus(url1); + + // Reuse the first query while the initial two queries are still resolving. + let url2 = url0; + url2.searchParams.delete(expectSavedKey); + url2.searchParams.append(expectSavedKey, "true"); + const promise2 = attachIFrameWithEventListenerForSelectURLStatus(url2); + + // Reuse the second query. + let url3 = url1; + url3.searchParams.delete(expectSavedKey); + url3.searchParams.append(expectSavedKey, "true"); + const promise3 = attachIFrameWithEventListenerForSelectURLStatus(url3); + + // Wait for all the promises to resolve. + await Promise.all([promise0, promise1, promise2, promise3]); + +}, 'for selectURL(), multiple saved queries can be handled simultaneously.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-key-tuples.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-key-tuples.tentative.https.sub.html new file mode 100644 index 00000000000..05bc807b868 --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-key-tuples.tentative.https.sub.html @@ -0,0 +1,87 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +// Saved query results are stored in a map keyed by tuples as follows: +// <data origin, script source URL, operation name, query name>. +// If two queries share the same name, but the full tuple doesn't match, +// then the queries are seen as distinct. In particular, queries cannot be +// shared across different data origins, worklet script source URLs, or +// worklet operation names. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const operationNameKey = "operation"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + let url0 = new URL( + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // Initiate a query to be saved. + url0.searchParams.append(queryKey, "query"); + url0.searchParams.append(mockResultKey, "1"); + url0.searchParams.append(moduleNameKey, "simple-module"); + url0.searchParams.append(operationNameKey, "test-url-selection-operation"); + url0.searchParams.append(urlCountKey, "4"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "true"); + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // This second query will be distinct because its operation name differs. We + // set a new mock result that differs from all previous results to verify + // that we return this new result instead of re-using any previous result. + let url1 = url0; + url1.searchParams.delete(operationNameKey); + url1.searchParams.append(operationNameKey, "test-url-selection-operation-2"); + url1.searchParams.delete(mockResultKey); + url1.searchParams.append(mockResultKey, "2"); + await attachIFrameWithEventListenerForSelectURLStatus(url1); + + // This third query will be distinct because its script source URL differs. We + // set a new mock result that differs from all previous results to verify + // that we return this new result instead of re-using any previous result. + let url2 = url0; + url2.searchParams.delete(moduleNameKey); + url2.searchParams.append(moduleNameKey, "simple-module2"); + url2.searchParams.delete(operationNameKey); + url2.searchParams.append(operationNameKey , "test-url-selection-operation"); + url2.searchParams.delete(mockResultKey); + url2.searchParams.append(mockResultKey, "3"); + await attachIFrameWithEventListenerForSelectURLStatus(url2); + + // This fourth query will be distinct because its data origin differs. We + // set a new mock result that differs from all previous results to verify + // that we return this new result instead of re-using any previous result. + const crossOrigin = get_host_info().HTTPS_NOTSAMESITE_ORIGIN; + let url3 = updateUrlToUseNewOrigin(url0, crossOrigin); + url3.searchParams.delete(moduleNameKey); + url3.searchParams.append(moduleNameKey , "simple-module"); + url3.searchParams.delete(operationNameKey); + url3.searchParams.append(operationNameKey, "test-url-selection-operation"); + url3.searchParams.delete(mockResultKey); + url3.searchParams.append(mockResultKey, "4"); + url3.searchParams.delete(urlCountKey); + url3.searchParams.append(urlCountKey, "5"); + await attachIFrameWithEventListenerForSelectURLStatus(url3); + +}, 'for selectURL(), saved queries are keyed on <origin, URL, operation, query>.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-rejection.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-rejection.tentative.https.sub.html new file mode 100644 index 00000000000..819b5e5166a --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-rejection.tentative.https.sub.html @@ -0,0 +1,62 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + let url0 = new URL( + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // We don't expect success because the operation definition has an + // intentional error and will reject. Hence the default index (0) will be + // returned and will also be stored for later use. + url0.searchParams.append(queryKey, "query"); + url0.searchParams.append(mockResultKey, "2"); + url0.searchParams.append(moduleNameKey, "erroneous-function-module"); + url0.searchParams.append(urlCountKey, "4"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "false"); + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // Re-using the query will retrieve the default index. + let url1 = url0; + url1.searchParams.delete(expectSavedKey); + url1.searchParams.append(expectSavedKey, "true"); + await attachIFrameWithEventListenerForSelectURLStatus(url1); + + // Verify that worklet was run exactly once. + const ancestorKey = token(); + const urls = generateUrls(2, "/shared-storage/resources/frame", + [ancestorKey]); + const worklet = await sharedStorage.createWorklet( + '/shared-storage/resources/erroneous-function-module.js'); + let config = await worklet.selectURL('verify-run-attempts', urls, + {resolveToConfig: true}); + assert_true(config instanceof FencedFrameConfig); + attachFencedFrame(config, 'opaque-ads'); + const result = await nextValueFromServer(ancestorKey); + assert_equals(result, 'frame1_loaded', "expected 1 run attempt"); + +}, 'for selectURL(), a saved query stores the default index on rejection.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-same-origin-multi-query.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-same-origin-multi-query.tentative.https.sub.html new file mode 100644 index 00000000000..9ee49bb2b25 --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-same-origin-multi-query.tentative.https.sub.html @@ -0,0 +1,66 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const operationNameKey = "operation"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + let url0 = new URL( + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // Initiate a query to be saved. + url0.searchParams.append(queryKey, "query0"); + url0.searchParams.append(mockResultKey, "2"); + url0.searchParams.append(moduleNameKey, "simple-module"); + url0.searchParams.append(operationNameKey, "test-slow-url-selection-operation"); + url0.searchParams.append(urlCountKey, "4"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "true"); + const promise0 = attachIFrameWithEventListenerForSelectURLStatus(url0); + + // Initiate a second query to be saved without waiting for the first. + let url1 = url0; + url1.searchParams.delete(queryKey); + url1.searchParams.append(queryKey, "query1"); + url1.searchParams.delete(mockResultKey); + url1.searchParams.append(mockResultKey, "1"); + const promise1 = attachIFrameWithEventListenerForSelectURLStatus(url1); + + // Reuse the first query while the initial two queries are still resolving. + let url2 = url0; + url2.searchParams.delete(expectSavedKey); + url2.searchParams.append(expectSavedKey, "true"); + const promise2 = attachIFrameWithEventListenerForSelectURLStatus(url2); + + // Reuse the second query. + let url3 = url1; + url3.searchParams.delete(expectSavedKey); + url3.searchParams.append(expectSavedKey, "true"); + const promise3 = attachIFrameWithEventListenerForSelectURLStatus(url3); + + // Wait for all the promises to resolve. + await Promise.all([promise0, promise1, promise2, promise3]); + +}, 'for selectURL(), multiple saved queries can be handled simultaneously.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-after-retrieving.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-after-retrieving.tentative.https.sub.html new file mode 100644 index 00000000000..f45ce4957c4 --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-after-retrieving.tentative.https.sub.html @@ -0,0 +1,55 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + let url0 = new URL( + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // We expect success because the returned index (2) is in range. + url0.searchParams.append(queryKey, "query"); + url0.searchParams.append(mockResultKey, "2"); + url0.searchParams.append(moduleNameKey, "simple-module"); + url0.searchParams.append(urlCountKey, "4"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "true"); + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // Re-using the query on a URL list of smaller size may affect the + // returned result, since 2 is out of range for a URL list + // of size 1. This verifies that the default index (0) is returned in this + // case. + let url1 = url0; + url1.searchParams.delete(urlCountKey); + url1.searchParams.append(urlCountKey, "1"); + url1.searchParams.delete(expectSavedKey); + url1.searchParams.append(expectSavedKey, "true"); + url1.searchParams.delete(expectSuccessKey); + url1.searchParams.append(expectSuccessKey, "false"); + await attachIFrameWithEventListenerForSelectURLStatus(url1); + +}, 'for selectURL(), a saved query result index is verified after retrieval,' + + ' and the default is returned if the index is out of range.'); +</script> +</body> diff --git a/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-before-storing.tentative.https.sub.html b/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-before-storing.tentative.https.sub.html new file mode 100644 index 00000000000..5cb906e61d5 --- /dev/null +++ b/tests/wpt/tests/shared-storage/select-url-saved-query-validate-index-before-storing.tentative.https.sub.html @@ -0,0 +1,54 @@ +<!doctype html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/utils.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/shared-storage-selecturl-limit/resources/utils.js"></script> +<script src="/shared-storage/resources/util.js"></script> +<script src="/fenced-frame/resources/utils.js"></script> + +<body> +<script> +'use strict'; + +// Note that we have set the site page bit limit to 6 and the overall page +// bit limit to 12. + +promise_test(async () => { + const queryKey = "query"; + const mockResultKey = "mockresult"; + const urlCountKey = "urlcount"; + const moduleNameKey = "module"; + const expectSavedKey = "expectsaved"; + const expectSuccessKey = "expectsuccess"; + + let url0 = new URL( + "/shared-storage/" + + "resources/select-url-saved-query-inner.https.sub.html", + location.href); + + // We don't expect success because the returned index (2) is out of range for + // a URL list of size 1. Hence the default index (0) will be returned. + url0.searchParams.append(queryKey, "query"); + url0.searchParams.append(mockResultKey, "2"); + url0.searchParams.append(moduleNameKey, "simple-module"); + url0.searchParams.append(urlCountKey, "1"); + url0.searchParams.append(expectSavedKey, "false"); + url0.searchParams.append(expectSuccessKey, "false"); + await attachIFrameWithEventListenerForSelectURLStatus(url0); + + // Re-using the query on a URL list of larger size doesn't affect the + // returned result even though 2 would have been in-range for a URL list + // of size 4. This verifies that the default index (0) is stored + // and retrieved in this case. + let url1 = url0; + url1.searchParams.delete(urlCountKey); + url1.searchParams.append(urlCountKey, "4"); + url1.searchParams.delete(expectSavedKey); + url1.searchParams.append(expectSavedKey, "true"); + await attachIFrameWithEventListenerForSelectURLStatus(url1); + +}, 'for selectURL(), a saved query result index is verified before storing,' + + ' and the default is stored if the index is out of range.'); +</script> +</body> diff --git a/tests/wpt/tests/svg/text/scripted/getcharnumatposition-slr.tentative.html b/tests/wpt/tests/svg/text/scripted/getcharnumatposition-slr.tentative.html new file mode 100644 index 00000000000..a929d58ba14 --- /dev/null +++ b/tests/wpt/tests/svg/text/scripted/getcharnumatposition-slr.tentative.html @@ -0,0 +1,38 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>SVGTextContentElement.getCharNumAtPosition</title> +<link rel="help" href="https://svgwg.org/svg2-draft/text.html#__svg__SVGTextContentElement__getCharNumAtPosition"> +<link rel="help" href="https://github.com/w3c/svgwg/issues/955"> +<link rel="stylesheet" href="/fonts/ahem.css"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<svg width="800" height="600"> +<style> +text { + font: 20px/1 Ahem; +} +</style> +<text><tspan id="htb" x="40" y="100">abc</tspan></text> +<text style="writing-mode:sideways-lr"><tspan id="slr" x="40" y="200">abc</tspan></text> +</svg> + +<script> +function newPoint(x, y) { + const p = document.querySelector('svg').createSVGPoint(); + p.x = x; + p.y = y; + return p; +} + +test(() => { + const element = document.querySelector('#slr'); + assert_equals(element.getNumberOfChars(), 3); + const start = 200; + assert_equals(element.getCharNumAtPosition(newPoint(40, start + 10)), -1); + assert_equals(element.getCharNumAtPosition(newPoint(40, start - 10)), 0); + assert_equals(element.getCharNumAtPosition(newPoint(40, start - 30)), 1); + assert_equals(element.getCharNumAtPosition(newPoint(40, start - 50)), 2); + assert_equals(element.getCharNumAtPosition(newPoint(40, start - 70)), -1); +}, 'sideways-lr'); +</script> diff --git a/tests/wpt/tests/svg/text/scripted/getcharnumatposition.html b/tests/wpt/tests/svg/text/scripted/getcharnumatposition.html index 779fb477b95..f17369b3742 100644 --- a/tests/wpt/tests/svg/text/scripted/getcharnumatposition.html +++ b/tests/wpt/tests/svg/text/scripted/getcharnumatposition.html @@ -15,7 +15,6 @@ text { <text><tspan id="htb" x="40" y="100">abc</tspan></text> <text style="writing-mode:vertical-lr"><tspan id="vlr" x="40" y="120">abc</tspan></text> <text style="writing-mode:vertical-rl"><tspan id="vrl" x="80" y="120">abc</tspan></text> -<text style="writing-mode:sideways-lr"><tspan id="slr" x="40" y="200">abc</tspan></text> <text style="writing-mode:sideways-rl"><tspan id="srl" x="80" y="200">abc</tspan></text> </svg> @@ -61,20 +60,6 @@ test(() => { }, 'virtical-rl'); test(() => { - const element = document.querySelector('#slr'); - assert_equals(element.getNumberOfChars(), 3); - // If UAs follow the current SVG specification, - // - The text starts below (40,200), and grows upwards. - // - It ends at (40,200). - const start = 200; - assert_equals(element.getCharNumAtPosition(newPoint(40, start - 10)), -1); - assert_equals(element.getCharNumAtPosition(newPoint(40, start + 10)), 2); - assert_equals(element.getCharNumAtPosition(newPoint(40, start + 30)), 1); - assert_equals(element.getCharNumAtPosition(newPoint(40, start + 50)), 0); - assert_equals(element.getCharNumAtPosition(newPoint(40, start + 70)), -1); -}, 'sideways-lr'); - -test(() => { const element = document.querySelector('#srl'); assert_equals(element.getNumberOfChars(), 3); const start = 200; diff --git a/tests/wpt/tests/svg/text/scripted/getstartpositionofchar.html b/tests/wpt/tests/svg/text/scripted/getstartpositionofchar.html new file mode 100644 index 00000000000..5b09ea198a2 --- /dev/null +++ b/tests/wpt/tests/svg/text/scripted/getstartpositionofchar.html @@ -0,0 +1,75 @@ +<!DOCTYPE html> +<title>SVGTextContentElement.getStartPositionOfChar and getEndPositionOfChar</title> +<link rel="help" href="https://svgwg.org/svg2-draft/text.html#__svg__SVGTextContentElement__getStartPositionOfChar"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<link rel="stylesheet" href="/fonts/ahem.css"> +<style> +text { + font: 10px/1 Ahem; +} +#vrl { + writing-mode: vertical-rl; +} +#vlr { + writing-mode: vertical-lr; +} +#srl { + writing-mode: sideways-rl; +} +#slr { + writing-mode: sideways-lr; +} +</style> + +<svg> + <text id="vrl" x="100" y="100">ABC</text> + <text id="vlr" x="100" y="100">ABC</text> + <text id="srl" x="100" y="100">ABC</text> + <text id="slr" x="100" y="100">ABC</text> +</svg> + +<script> +const FONT_SIZE = 10; +function $(sel) { return document.querySelector(sel); } + +test(() => { + const target = $('#vrl'); + const base = target.getStartPositionOfChar(0).y; + assert_equals(base + FONT_SIZE, target.getEndPositionOfChar(0).y); + assert_equals(base + FONT_SIZE, target.getStartPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getEndPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getStartPositionOfChar(2).y); + assert_equals(base + FONT_SIZE * 3, target.getEndPositionOfChar(2).y); +}, 'vertical-rl'); + +test(() => { + const target = $('#vlr'); + const base = target.getStartPositionOfChar(0).y; + assert_equals(base + FONT_SIZE, target.getEndPositionOfChar(0).y); + assert_equals(base + FONT_SIZE, target.getStartPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getEndPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getStartPositionOfChar(2).y); + assert_equals(base + FONT_SIZE * 3, target.getEndPositionOfChar(2).y); +}, 'vertical-lr'); + +test(() => { + const target = $('#srl'); + const base = target.getStartPositionOfChar(0).y; + assert_equals(base + FONT_SIZE, target.getEndPositionOfChar(0).y); + assert_equals(base + FONT_SIZE, target.getStartPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getEndPositionOfChar(1).y); + assert_equals(base + FONT_SIZE * 2, target.getStartPositionOfChar(2).y); + assert_equals(base + FONT_SIZE * 3, target.getEndPositionOfChar(2).y); +}, 'sideways-rl'); + +test(() => { + const target = $('#slr'); + const base = target.getStartPositionOfChar(0).y; + assert_equals(base - FONT_SIZE, target.getEndPositionOfChar(0).y); + assert_equals(base - FONT_SIZE, target.getStartPositionOfChar(1).y); + assert_equals(base - FONT_SIZE * 2, target.getEndPositionOfChar(1).y); + assert_equals(base - FONT_SIZE * 2, target.getStartPositionOfChar(2).y); + assert_equals(base - FONT_SIZE * 3, target.getEndPositionOfChar(2).y); +}, 'sideways-lr'); +</script> diff --git a/tests/wpt/tests/tools/ci/run_tc.py b/tests/wpt/tests/tools/ci/run_tc.py index 446afadac88..9def3bebcab 100755 --- a/tests/wpt/tests/tools/ci/run_tc.py +++ b/tests/wpt/tests/tools/ci/run_tc.py @@ -141,10 +141,15 @@ def install_certificates(): def start_dbus(): + # Start system bus run(["sudo", "service", "dbus", "start"]) - # Enable dbus autolaunch for Chrome - # https://source.chromium.org/chromium/chromium/src/+/main:content/app/content_main.cc;l=220;drc=0bcc023b8cdbc073aa5c48db373810db3f765c87. - os.environ["DBUS_SESSION_BUS_ADDRESS"] = "autolaunch:" + # Start user bus and set env + dbus_env = run(["dbus-launch"], return_stdout=True) + for dbus_env_line in dbus_env.splitlines(): + dbus_env_name, dbus_env_value = dbus_env_line.split("=", 1) + assert (dbus_env_name.startswith("DBUS_SESSION")) + os.environ[dbus_env_name] = dbus_env_value + assert ("DBUS_SESSION_BUS_ADDRESS" in os.environ) def install_chrome(channel): @@ -267,7 +272,9 @@ def setup_environment(args): if "chrome" in args.browser: assert args.channel is not None install_chrome(args.channel) - # Chrome is using dbus for various features. + + # These browsers use dbus for various features. + if any(b in args.browser for b in ["chrome", "webkitgtk_minibrowser"]): start_dbus() if args.xvfb: diff --git a/tests/wpt/tests/tools/serve/serve.py b/tests/wpt/tests/tools/serve/serve.py index a11e15db98d..2fe8c3dc546 100644 --- a/tests/wpt/tests/tools/serve/serve.py +++ b/tests/wpt/tests/tools/serve/serve.py @@ -602,6 +602,7 @@ class RoutesBuilder: ("*", "/.well-known/attribution-reporting/debug/report-aggregate-debug", handlers.PythonScriptHandler), ("*", "/.well-known/attribution-reporting/debug/verbose", handlers.PythonScriptHandler), ("GET", "/.well-known/interest-group/permissions/", handlers.PythonScriptHandler), + ("*", "/.well-known/interest-group/real-time-report", handlers.PythonScriptHandler), ("*", "/.well-known/private-aggregation/*", handlers.PythonScriptHandler), ("*", "/.well-known/web-identity", handlers.PythonScriptHandler), ("*", "*.py", handlers.PythonScriptHandler), diff --git a/tests/wpt/tests/tools/webdriver/webdriver/error.py b/tests/wpt/tests/tools/webdriver/webdriver/error.py index b19693e2d25..bd2b31728ec 100644 --- a/tests/wpt/tests/tools/webdriver/webdriver/error.py +++ b/tests/wpt/tests/tools/webdriver/webdriver/error.py @@ -2,6 +2,7 @@ import collections import json +import string from typing import ClassVar, DefaultDict, Type @@ -32,11 +33,10 @@ class WebDriverException(Exception): message = f"{self.status_code} ({self.http_status})" if self.message is not None: - message += ": %s" % self.message - message += "\n" + message += ": %s" % self.message.strip(string.whitespace) - if self.stacktrace: - message += ("\nRemote-end stacktrace:\n\n%s" % self.stacktrace) + if self.stacktrace is not None: + message += ("\n\nRemote-end stacktrace:\n\n%s" % self.stacktrace.strip("\n")) return message @@ -209,9 +209,10 @@ def from_response(response): "Expected 'value' key in response body:\n" "%s" % json.dumps(response.body)) - # all fields must exist, but stacktrace can be an empty string + # all fields must exist, but both message and stacktrace are + # implementation-defined and could be empty code = value["error"] - message = value["message"] + message = value["message"] or None stack = value["stacktrace"] or None cls = get(code) diff --git a/tests/wpt/tests/tools/wpt/browser.py b/tests/wpt/tests/tools/wpt/browser.py index 93260439701..923bf9904f1 100644 --- a/tests/wpt/tests/tools/wpt/browser.py +++ b/tests/wpt/tests/tools/wpt/browser.py @@ -10,7 +10,7 @@ from abc import ABCMeta, abstractmethod from datetime import datetime, timedelta, timezone from shutil import which from typing import Optional -from urllib.parse import urlsplit +from urllib.parse import urlsplit, quote import html5lib import requests @@ -2375,34 +2375,20 @@ class WebKitTestRunner(Browser): class WebKitGTKMiniBrowser(WebKit): - def _get_osidversion(self): - with open('/etc/os-release') as osrelease_handle: - for line in osrelease_handle.readlines(): - if line.startswith('ID='): - os_id = line.split('=')[1].strip().strip('"') - if line.startswith('VERSION_ID='): - version_id = line.split('=')[1].strip().strip('"') - assert os_id - assert version_id - osidversion = os_id + '-' + version_id - assert ' ' not in osidversion - assert len(osidversion) > 3 - return osidversion.capitalize() - def download(self, dest=None, channel=None, rename=None): base_dowload_uri = "https://webkitgtk.org/built-products/" - base_download_dir = base_dowload_uri + "x86_64/release/" + channel + "/" + self._get_osidversion() + "/MiniBrowser/" + base_download_dir = base_dowload_uri + platform.machine() + "/release/" + channel + "/MiniBrowser/" try: response = get(base_download_dir + "LAST-IS") except requests.exceptions.HTTPError as e: if e.response.status_code == 404: raise RuntimeError("Can't find a WebKitGTK MiniBrowser %s bundle for %s at %s" - % (channel, self._get_osidversion(), base_dowload_uri)) + % (channel, platform.machine(), base_dowload_uri)) raise bundle_filename = response.text.strip() - bundle_url = base_download_dir + bundle_filename + bundle_url = base_download_dir + quote(bundle_filename) dest = self._get_browser_download_dir(dest, channel) bundle_file_path = os.path.join(dest, bundle_filename) @@ -2411,13 +2397,14 @@ class WebKitGTKMiniBrowser(WebKit): with open(bundle_file_path, "w+b") as f: get_download_to_descriptor(f, bundle_url) - bundle_filename_no_ext, _ = os.path.splitext(bundle_filename) + ext_ndots = 2 if '.tar.' in bundle_filename else 1 + bundle_filename_no_ext = '.'.join(bundle_filename.split('.')[:-ext_ndots]) bundle_hash_url = base_download_dir + bundle_filename_no_ext + ".sha256sum" bundle_expected_hash = get(bundle_hash_url).text.strip().split(" ")[0] bundle_computed_hash = sha256sum(bundle_file_path) if bundle_expected_hash != bundle_computed_hash: - self.logger.error("Calculated SHA256 hash is %s but was expecting %s" % (bundle_computed_hash,bundle_expected_hash)) + self.logger.error("Calculated SHA256 hash is %s but was expecting %s" % (bundle_computed_hash, bundle_expected_hash)) raise RuntimeError("The WebKitGTK MiniBrowser bundle at %s has incorrect SHA256 hash." % bundle_file_path) return bundle_file_path @@ -2431,26 +2418,26 @@ class WebKitGTKMiniBrowser(WebKit): rmtree(bundle_uncompress_directory) os.mkdir(bundle_uncompress_directory) + bundle_file_name = os.path.basename(bundle_path) with open(bundle_path, "rb") as f: - unzip(f, bundle_uncompress_directory) + if bundle_file_name.endswith(".zip"): + unzip(f, bundle_uncompress_directory) + elif ".tar." in bundle_file_name: + untar(f, bundle_uncompress_directory) + else: + raise NotImplementedError("Unable to install WebKitGTK MiniBrowser bundle from file:" % bundle_file_name) + os.remove(bundle_path) - install_dep_script = os.path.join(bundle_uncompress_directory, "install-dependencies.sh") - if os.path.isfile(install_dep_script): - self.logger.info("Executing install-dependencies.sh script from bundle.") - install_dep_cmd = [install_dep_script] - if not prompt: - install_dep_cmd.append("--autoinstall") - # use subprocess.check_call() directly to display unbuffered stdout/stderr in real-time. - subprocess.check_call(install_dep_cmd) + for expected_binary in ["MiniBrowser", "WebKitWebDriver"]: + binary_path = os.path.join(bundle_uncompress_directory, expected_binary) + if not (os.path.isfile(binary_path) and os.access(binary_path, os.X_OK)): + raise RuntimeError("Can't find a %s binary at %s" % (expected_binary, binary_path)) minibrowser_path = os.path.join(bundle_uncompress_directory, "MiniBrowser") - if not os.path.isfile(minibrowser_path): - raise RuntimeError("Can't find a MiniBrowser binary at %s" % minibrowser_path) - - os.remove(bundle_path) + version_str = subprocess.check_output([minibrowser_path, "--version"]).decode("utf-8").strip() + self.logger.info("WebKitGTK MiniBrowser bundle for channel %s installed: %s" % (channel, version_str)) install_ok_file = os.path.join(bundle_uncompress_directory, ".installation-ok") open(install_ok_file, "w").close() # touch - self.logger.info("WebKitGTK MiniBrowser bundle for channel %s installed." % channel) return minibrowser_path def _find_executable_in_channel_bundle(self, binary, venv_path=None, channel=None): @@ -2467,7 +2454,6 @@ class WebKitGTKMiniBrowser(WebKit): if minibrowser_path: return minibrowser_path - libexecpaths = ["/usr/libexec/webkit2gtk-4.0"] # Fedora path triplet = "x86_64-linux-gnu" # Try to use GCC to detect this machine triplet gcc = which("gcc") @@ -2476,8 +2462,16 @@ class WebKitGTKMiniBrowser(WebKit): triplet = call(gcc, "-dumpmachine").strip() except subprocess.CalledProcessError: pass - # Add Debian/Ubuntu path - libexecpaths.append("/usr/lib/%s/webkit2gtk-4.0" % triplet) + + versions = ["4.0", "4.1"] + libexecpaths = [] + + for version in versions: + # Fedora paths. + libexecpaths.append(f"/usr/libexec/webkit2gtk-{version}") + # Debian/Ubuntu paths + libexecpaths.append(f"/usr/lib/{triplet}/webkit2gtk-{version}") + return which("MiniBrowser", path=os.pathsep.join(libexecpaths)) def find_webdriver(self, venv_path=None, channel=None): diff --git a/tests/wpt/tests/tools/wptrunner/wptrunner/browsers/firefox.py b/tests/wpt/tests/tools/wptrunner/wptrunner/browsers/firefox.py index 964ed8337a0..e55036ecc48 100644 --- a/tests/wpt/tests/tools/wptrunner/wptrunner/browsers/firefox.py +++ b/tests/wpt/tests/tools/wptrunner/wptrunner/browsers/firefox.py @@ -221,8 +221,9 @@ def run_info_extras(logger, default_prefs=None, **kwargs): "sessionHistoryInParent": (not kwargs.get("disable_fission") or not bool_pref("fission.disableSessionHistoryInParent")), "swgl": bool_pref("gfx.webrender.software"), - "privateBrowsing": (kwargs["tags"] is not None and ("privatebrowsing" in kwargs["tags"]))} - + "privateBrowsing": (kwargs["tags"] is not None and ("privatebrowsing" in kwargs["tags"])), + "remoteAsyncEvents": bool_pref("remote.events.async.enabled"), + } rv.update(run_info_browser_version(**kwargs)) return rv diff --git a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/base.py b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/base.py index 45d3af3bbc9..1dba97d9476 100644 --- a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/base.py +++ b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/base.py @@ -782,12 +782,13 @@ class CallbackHandler: except self.unimplemented_exc: self.logger.warning("Action %s not implemented" % action) self._send_message(cmd_id, "complete", "error", f"Action {action} not implemented") - except self.expected_exc: - self.logger.debug(f"Action {action} failed with an expected exception") - self._send_message(cmd_id, "complete", "error", f"Action {action} failed") + except self.expected_exc as e: + self.logger.debug(f"Action {action} failed with an expected exception", exc_info=True) + self._send_message(cmd_id, "complete", "error", f"Action {action} failed: {e!s}") except Exception: - self.logger.warning(f"Action {action} failed") - self._send_message(cmd_id, "complete", "error") + self.logger.warning(f"Action {action} failed with an unexpected exception", exc_info=True) + exception_string = traceback.format_exc() + self._send_message(cmd_id, "complete", "error", f"Action {action} failed:\n{exception_string}") raise else: self.logger.debug(f"Action {action} completed with result {result}") diff --git a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorchrome.py b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorchrome.py index 6ba361ee4c5..95e367a683d 100644 --- a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorchrome.py +++ b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorchrome.py @@ -261,8 +261,12 @@ class ChromeDriverTestharnessExecutor(WebDriverTestharnessExecutor, _SanitizerMi # with no other browsing history. protocol.base.set_window(test_window) protocol.base.load("about:blank") + # DevTools can very rarely fail with "History cannot be pruned". + # The test window will be replaced in that case. protocol.cdp.execute_cdp_command("Page.resetNavigationHistory") - except error.NoSuchWindowException: + except error.WebDriverException: + protocol.testharness.close_windows([test_window]) + protocol.base.set_window(protocol.testharness.runner_handle) test_window = self.protocol.testharness.persistent_test_window = None if not test_window: test_window = super().get_or_create_test_window(protocol) diff --git a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py index 22aaf031a73..ca7b531227b 100644 --- a/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py +++ b/tests/wpt/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py @@ -73,12 +73,7 @@ class WebDriverBaseProtocolPart(BaseProtocolPart): return method(script, args=args) def set_timeout(self, timeout): - try: - self.webdriver.timeouts.script = timeout - except webdriver_error.WebDriverException: - # workaround https://bugs.chromium.org/p/chromedriver/issues/detail?id=2057 - body = {"type": "script", "ms": timeout * 1000} - self.webdriver.send_session_command("POST", "timeouts", body) + self.webdriver.timeouts.script = timeout def create_window(self, type="tab", **kwargs): return self.webdriver.new_window(type_hint=type) @@ -245,19 +240,23 @@ class WebDriverTestharnessProtocolPart(TestharnessProtocolPart): def close_old_windows(self): self.webdriver.actions.release() - for handle in self.webdriver.handles: - if handle not in {self.runner_handle, self.persistent_test_window}: - self._close_window(handle) + self.close_windows(set(self.webdriver.handles) - { + self.runner_handle, + self.persistent_test_window, + }) self.webdriver.window_handle = self.runner_handle self.reset_browser_state() return self.runner_handle - def _close_window(self, window_handle): - try: - self.webdriver.window_handle = window_handle - self.webdriver.window.close() - except webdriver_error.NoSuchWindowException: - pass + def close_windows(self, window_handles): + for window_handle in window_handles: + try: + self.webdriver.window_handle = window_handle + remaining_windows = self.webdriver.window.close() + if window_handle in remaining_windows: + raise Exception("the window remained open after sending the window close command") + except webdriver_error.NoSuchWindowException: + pass def reset_browser_state(self): """Reset browser-wide state that normally persists between tests.""" @@ -898,8 +897,19 @@ class WebDriverTestharnessExecutor(TestharnessExecutor): protocol.loop.run_until_complete(protocol.bidi_events.unsubscribe_all()) extra = {} - if (leak_part := getattr(protocol, "leak", None)) and (counters := leak_part.check()): - extra["leak_counters"] = counters + if leak_part := getattr(protocol, "leak", None): + testharness_window = protocol.base.current_window + extra_windows = set(protocol.base.window_handles()) + extra_windows -= {protocol.testharness.runner_handle, testharness_window} + protocol.testharness.close_windows(extra_windows) + try: + protocol.base.set_window(testharness_window) + if counters := leak_part.check(): + extra["leak_counters"] = counters + except webdriver_error.NoSuchWindowException: + pass + finally: + protocol.base.set_window(protocol.testharness.runner_handle) # Attempt to clean up any leftover windows, if allowed. This is # preferable as it will blame the correct test if something goes wrong diff --git a/tests/wpt/tests/webdriver/tests/bidi/input/perform_actions/navigation.py b/tests/wpt/tests/webdriver/tests/bidi/input/perform_actions/navigation.py new file mode 100644 index 00000000000..825bca7e994 --- /dev/null +++ b/tests/wpt/tests/webdriver/tests/bidi/input/perform_actions/navigation.py @@ -0,0 +1,99 @@ +import asyncio +import time + +import pytest +import webdriver.bidi.error as error +from webdriver.bidi.modules.input import Actions, get_element_origin + +from tests.support.keys import Keys +from . import get_element_rect +from .. import get_events + +pytestmark = pytest.mark.asyncio + +PAGE_CONTENT = """ + <input></input> + <script> + "use strict;" + + var allEvents = { events: [] }; + + const input = document.querySelector("input"); + input.focus(); + + window.addEventListener("keydown", e => allEvents.events.push([e.key])); + window.addEventListener("mousemove", e => { + allEvents.events.push([ + e.clientX, + e.clientY, + ]); + }); + </script> +""" + + +async def test_key(bidi_session, inline, top_context, get_element): + await bidi_session.browsing_context.navigate( + context=top_context["context"], + url=inline(f""" + <input onkeydown="window.location = '{inline(PAGE_CONTENT)}'"/> + <script> + const input = document.querySelector("input"); + input.focus(); + </script> + """), + wait="complete" + ) + input = await get_element("input") + + actions = Actions() + ( + actions.add_key() + .key_down("1") + .key_up("1") + .pause(1000) + .key_down("2") + .key_up("2") + ) + + await bidi_session.input.perform_actions( + actions=actions, context=top_context["context"] + ) + + with pytest.raises(error.NoSuchNodeException): + await get_element_rect(bidi_session, context=top_context, element=input) + + events = await get_events(bidi_session, top_context["context"]) + assert len(events) == 1 + assert events[0] == ["2"] + + +async def test_pointer(bidi_session, inline, top_context, get_element): + await bidi_session.browsing_context.navigate( + context=top_context["context"], + url=inline( + f"""<input onmousedown="window.location = '{inline(PAGE_CONTENT)}'"/>"""), + wait="complete" + ) + input = await get_element("input") + + actions = Actions() + ( + actions.add_pointer() + .pointer_move(x=0, y=0, origin=get_element_origin(input)) + .pointer_down(button=0) + .pointer_up(button=0) + .pause(1000) + .pointer_move(x=200, y=200) + ) + + await bidi_session.input.perform_actions( + actions=actions, context=top_context["context"] + ) + + with pytest.raises(error.NoSuchNodeException): + await get_element_rect(bidi_session, context=top_context, element=input) + + events = await get_events(bidi_session, top_context["context"]) + assert len(events) == 1 + assert events[0] == [200, 200] diff --git a/tests/wpt/tests/webdriver/tests/classic/fullscreen_window/fullscreen.py b/tests/wpt/tests/webdriver/tests/classic/fullscreen_window/fullscreen.py index f6e9e879236..eb170369627 100644 --- a/tests/wpt/tests/webdriver/tests/classic/fullscreen_window/fullscreen.py +++ b/tests/wpt/tests/webdriver/tests/classic/fullscreen_window/fullscreen.py @@ -1,5 +1,5 @@ from tests.support.asserts import assert_error, assert_success -from tests.support.helpers import is_fullscreen, is_maximized +from tests.support.helpers import is_fullscreen, is_maximized, is_not_maximized def fullscreen(session): @@ -44,13 +44,14 @@ def test_fullscreen_from_normal_window(session, screen_size): def test_fullscreen_from_maximized_window(session, screen_size): assert not is_fullscreen(session) + original = session.window.rect session.window.maximize() - assert is_maximized(session) + assert is_maximized(session, original) response = fullscreen(session) assert_success(response, session.window.rect) - assert not is_maximized(session) + assert is_not_maximized(session) assert session.window.size == screen_size diff --git a/tests/wpt/tests/webdriver/tests/classic/maximize_window/from_minimized_window.py b/tests/wpt/tests/webdriver/tests/classic/maximize_window/from_minimized_window.py new file mode 100644 index 00000000000..ab33aeb963a --- /dev/null +++ b/tests/wpt/tests/webdriver/tests/classic/maximize_window/from_minimized_window.py @@ -0,0 +1,26 @@ +from tests.support.asserts import assert_success +from tests.support.helpers import document_hidden, is_maximized, is_not_maximized + + +def maximize(session): + return session.transport.send( + "POST", "session/{session_id}/window/maximize".format(**vars(session)) + ) + + +# This test is moved to a separate file to not affect other test results +# on Wayland, since at least for Firefox restoring from minimized state +# doesn't work. +def test_restore_from_minimized(session): + assert is_not_maximized(session) + original = session.window.rect + + session.window.minimize() + assert document_hidden(session) + assert is_not_maximized(session) + + response = maximize(session) + assert_success(response, session.window.rect) + + assert is_maximized(session, original) + assert not document_hidden(session) diff --git a/tests/wpt/tests/webdriver/tests/classic/maximize_window/maximize.py b/tests/wpt/tests/webdriver/tests/classic/maximize_window/maximize.py index 3a20a0d5589..6b9fc680b85 100644 --- a/tests/wpt/tests/webdriver/tests/classic/maximize_window/maximize.py +++ b/tests/wpt/tests/webdriver/tests/classic/maximize_window/maximize.py @@ -8,6 +8,7 @@ from tests.support.helpers import ( document_hidden, is_fullscreen, is_maximized, + is_not_maximized ) @@ -27,12 +28,13 @@ def test_no_browsing_context(session, closed_frame): def test_response_payload(session): - assert not is_maximized(session) + assert is_not_maximized(session) + original = session.window.rect response = maximize(session) value = assert_success(response, session.window.rect) - assert is_maximized(session) + assert is_maximized(session, original) assert isinstance(value, dict) assert isinstance(value.get("x"), int) @@ -42,7 +44,8 @@ def test_response_payload(session): def test_fully_exit_fullscreen(session): - assert not is_maximized(session) + assert is_not_maximized(session) + original = session.window.rect session.window.fullscreen() assert is_fullscreen(session) @@ -50,36 +53,24 @@ def test_fully_exit_fullscreen(session): response = maximize(session) assert_success(response, session.window.rect) - assert is_maximized(session) - assert not document_hidden(session) - - -def test_restore_from_minimized(session): - assert not is_maximized(session) - - session.window.minimize() - assert document_hidden(session) - assert not is_maximized(session) - - response = maximize(session) - assert_success(response, session.window.rect) - - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) def test_maximize_from_normal_window(session): - assert not is_maximized(session) + assert is_not_maximized(session) + original = session.window.rect response = maximize(session) assert_success(response, session.window.rect) - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) def test_maximize_with_window_already_at_maximum_size(session, available_screen_size): - assert not is_maximized(session) + assert is_not_maximized(session) + original = session.window.rect # Resize the window to the maximum available size. session.window.size = available_screen_size @@ -93,21 +84,22 @@ def test_maximize_with_window_already_at_maximum_size(session, available_screen_ response = maximize(session) assert_success(response, session.window.rect) - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) def test_maximize_twice_is_idempotent(session): - assert not is_maximized(session) + assert is_not_maximized(session) + original = session.window.rect first_response = maximize(session) assert_success(first_response, session.window.rect) - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) second_response = maximize(session) assert_success(second_response, session.window.rect) - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) diff --git a/tests/wpt/tests/webdriver/tests/classic/minimize_window/minimize.py b/tests/wpt/tests/webdriver/tests/classic/minimize_window/minimize.py index 2ad5333ec54..c4e15ad9a9c 100644 --- a/tests/wpt/tests/webdriver/tests/classic/minimize_window/minimize.py +++ b/tests/wpt/tests/webdriver/tests/classic/minimize_window/minimize.py @@ -4,7 +4,12 @@ # https://bugs.chromium.org/p/chromedriver/issues/detail?id=4642#c4 from tests.support.asserts import assert_error, assert_success -from tests.support.helpers import document_hidden, is_fullscreen, is_maximized +from tests.support.helpers import ( + document_hidden, + is_fullscreen, + is_maximized, + is_not_maximized, +) def minimize(session): @@ -52,14 +57,15 @@ def test_restore_from_fullscreen(session): def test_restore_from_maximized(session): assert not document_hidden(session) + original = session.window.rect session.window.maximize() - assert is_maximized(session) + assert is_maximized(session, original) assert not document_hidden(session) response = minimize(session) assert_success(response, session.window.rect) - assert not is_maximized(session) + assert is_not_maximized(session) assert document_hidden(session) diff --git a/tests/wpt/tests/webdriver/tests/classic/new_session/create_alwaysMatch.py b/tests/wpt/tests/webdriver/tests/classic/new_session/create_alwaysMatch.py index 64fd0a74256..7a7f007dabb 100644 --- a/tests/wpt/tests/webdriver/tests/classic/new_session/create_alwaysMatch.py +++ b/tests/wpt/tests/webdriver/tests/classic/new_session/create_alwaysMatch.py @@ -13,3 +13,10 @@ def test_valid(new_session, add_browser_capabilities, key, value): response, _ = new_session({"capabilities": { "alwaysMatch": add_browser_capabilities({key: value})}}) assert_success(response) + response_capabilities = response.body["value"]["capabilities"] + if ":" not in key and value is not None: + if key == "timeouts": + for timeout_key, timeout_value in value.items(): + assert response_capabilities[key][timeout_key] == timeout_value + else: + assert response_capabilities[key] == value diff --git a/tests/wpt/tests/webdriver/tests/classic/new_session/create_firstMatch.py b/tests/wpt/tests/webdriver/tests/classic/new_session/create_firstMatch.py index d4523f4330c..22c74bcfbd7 100644 --- a/tests/wpt/tests/webdriver/tests/classic/new_session/create_firstMatch.py +++ b/tests/wpt/tests/webdriver/tests/classic/new_session/create_firstMatch.py @@ -14,3 +14,10 @@ def test_valid(new_session, add_browser_capabilities, key, value): response, _ = new_session({"capabilities": { "firstMatch": [add_browser_capabilities({key: value})]}}) assert_success(response) + response_capabilities = response.body["value"]["capabilities"] + if ":" not in key and value is not None: + if key == "timeouts": + for timeout_key, timeout_value in value.items(): + assert response_capabilities[key][timeout_key] == timeout_value + else: + assert response_capabilities[key] == value diff --git a/tests/wpt/tests/webdriver/tests/classic/set_window_rect/set.py b/tests/wpt/tests/webdriver/tests/classic/set_window_rect/set.py index 9e15d02b0d1..51cddffed51 100644 --- a/tests/wpt/tests/webdriver/tests/classic/set_window_rect/set.py +++ b/tests/wpt/tests/webdriver/tests/classic/set_window_rect/set.py @@ -5,12 +5,15 @@ import pytest -import mozinfo - from webdriver.transport import Response from tests.support.asserts import assert_error, assert_success -from tests.support.helpers import is_fullscreen, is_maximized +from tests.support.helpers import ( + is_fullscreen, + is_maximized, + is_not_maximized, + is_wayland, +) def set_window_rect(session, rect): @@ -116,7 +119,7 @@ def test_restore_from_fullscreen(session): def test_restore_from_maximized(session): - assert not is_maximized(session) + assert is_not_maximized(session) original = session.window.rect target_rect = { @@ -127,12 +130,12 @@ def test_restore_from_maximized(session): } session.window.maximize() - assert is_maximized(session) + assert is_maximized(session, original) response = set_window_rect(session, target_rect) value = assert_success(response, session.window.rect) - assert not is_maximized(session) + assert is_not_maximized(session) assert value == target_rect @@ -141,7 +144,7 @@ def test_x_y_floats(session): value = assert_success(response) # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] == 150 assert value["y"] == 250 @@ -149,7 +152,7 @@ def test_x_y_floats(session): value = assert_success(response, session.window.rect) # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] == 150 assert value["y"] == 250 @@ -215,7 +218,7 @@ def test_set_to_available_size( value = assert_success(response, session.window.rect) # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value == target_rect else: target_rect["width"] == available_width @@ -335,7 +338,7 @@ def test_x_y(session): assert value["height"] == original["height"] # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] == original["x"] + 10 assert value["y"] == original["y"] + 10 @@ -369,7 +372,7 @@ def test_x_as_current(session): assert value["height"] == original["height"] # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] == original["x"] assert value["y"] == original["y"] + 10 @@ -386,7 +389,7 @@ def test_y_as_current(session): assert value["width"] == original["width"] assert value["height"] == original["height"] # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] == original["x"] + 10 assert value["y"] == original["y"] @@ -404,7 +407,7 @@ def test_negative_x_y(session, minimal_screen_position): assert value["height"] == original["height"] # Wayland doesn't return correct coordinates after changing window position. - if mozinfo.display != "wayland": + if not is_wayland(): assert value["x"] <= 0 assert value["y"] <= 0 diff --git a/tests/wpt/tests/webdriver/tests/support/helpers.py b/tests/wpt/tests/webdriver/tests/support/helpers.py index 0ca5bd28269..1cb5b801da2 100644 --- a/tests/wpt/tests/webdriver/tests/support/helpers.py +++ b/tests/wpt/tests/webdriver/tests/support/helpers.py @@ -1,6 +1,7 @@ import collections import math import sys +import os from urllib.parse import urlparse import webdriver @@ -208,7 +209,7 @@ def is_fullscreen(session): """) -def is_maximized(session): +def _get_maximized_state(session): dimensions = session.execute_script(""" return { availWidth: screen.availWidth, @@ -218,16 +219,48 @@ def is_maximized(session): } """) - return ( - # The maximized window can still have a border attached which would - # cause its dimensions to exceed the whole available screen. - dimensions["windowWidth"] >= dimensions["availWidth"] and + # The maximized window can still have a border attached which would + # cause its dimensions to exceed the whole available screen. + return (dimensions["windowWidth"] >= dimensions["availWidth"] and dimensions["windowHeight"] >= dimensions["availHeight"] and # Only return true if the window is not in fullscreen mode not is_fullscreen(session) ) +def is_maximized(session, original_rect): + if _get_maximized_state(session): + return True + + # Wayland doesn't guarantee that the window will get maximized + # to the screen, so check if the dimensions got larger. + elif is_wayland(): + dimensions = session.execute_script(""" + return { + windowWidth: window.outerWidth, + windowHeight: window.outerHeight, + } + """) + return ( + dimensions["windowWidth"] > original_rect["width"] and + dimensions["windowHeight"] > original_rect["height"] and + # Only return true if the window is not in fullscreen mode + not is_fullscreen(session) + ) + else: + return False + + +def is_not_maximized(session): + return not _get_maximized_state(session) + + +def is_wayland(): + # We don't use mozinfo.display here to make sure it also + # works upstream in wpt Github repo. + return os.environ.get("WAYLAND_DISPLAY", "") != "" + + def filter_dict(source, d): """Filter `source` dict to only contain same keys as `d` dict. diff --git a/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js b/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js index f43cca0ea4e..97bd666fa2c 100644 --- a/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js +++ b/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js @@ -95,6 +95,23 @@ promise_test(async () => { }, `readTensor() with an ArrayBuffer`); promise_test(async () => { + const sharedArrayBuffer = new SharedArrayBuffer(testContents.byteLength); + + await mlContext.readTensor(mlTensor, sharedArrayBuffer); + + assert_array_equals(new Uint32Array(sharedArrayBuffer), testContents); +}, `readTensor() with a SharedArrayBuffer`); + +promise_test(async () => { + const sharedArrayBuffer = new SharedArrayBuffer(testContents.byteLength); + const typedArray = new Uint32Array(sharedArrayBuffer); + + await mlContext.readTensor(mlTensor, typedArray); + + assert_array_equals(typedArray, testContents); +}, `readTensor() with a typeArray from a SharedArrayBuffer`); + +promise_test(async () => { // Create a slightly larger ArrayBuffer and set up the TypedArray at an // offset to make sure the MLTensor contents are written to the correct // offset. diff --git a/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js.headers b/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js.headers new file mode 100644 index 00000000000..5f8621ef836 --- /dev/null +++ b/tests/wpt/tests/webnn/conformance_tests/byob_readtensor.https.any.js.headers @@ -0,0 +1,2 @@ +Cross-Origin-Embedder-Policy: require-corp +Cross-Origin-Opener-Policy: same-origin diff --git a/tests/wpt/tests/webnn/conformance_tests/dequantizeLinear.https.any.js b/tests/wpt/tests/webnn/conformance_tests/dequantizeLinear.https.any.js index 8a04d0e6b8a..73dd916b976 100644 --- a/tests/wpt/tests/webnn/conformance_tests/dequantizeLinear.https.any.js +++ b/tests/wpt/tests/webnn/conformance_tests/dequantizeLinear.https.any.js @@ -32,6 +32,43 @@ const dequantizeLinearTests = [ 'dequantizeLinearInput': { 'data': [123], 'descriptor': {shape: [], dataType: 'int8'}, + 'constant': false + }, + 'dequantizeLinearScale': { + 'data': [1.1202747821807861], + 'descriptor': {shape: [], dataType: 'float32'}, + 'constant': true + }, + 'dequantizeLinearZeroPoint': { + 'data': [3], + 'descriptor': {shape: [], dataType: 'int8'}, + 'constant': true + } + }, + 'operators': [{ + 'name': 'dequantizeLinear', + 'arguments': [ + {'input': 'dequantizeLinearInput'}, + {'scale': 'dequantizeLinearScale'}, + {'zeroPoint': 'dequantizeLinearZeroPoint'} + ], + 'outputs': 'dequantizeLinearOutput' + }], + 'expectedOutputs': { + 'dequantizeLinearOutput': { + 'data': [134.43296813964844], + 'descriptor': {shape: [], dataType: 'float32'} + } + } + } + }, + { + 'name': 'dequantizeLinear constant input', + 'graph': { + 'inputs': { + 'dequantizeLinearInput': { + 'data': [123], + 'descriptor': {shape: [], dataType: 'int8'}, 'constant': true }, 'dequantizeLinearScale': { diff --git a/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js b/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js index 0bc51614608..582ecdb9d68 100644 --- a/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js +++ b/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js @@ -167,51 +167,63 @@ const testWriteTensor = (testName) => { promise_test(async () => { const tensorDescriptor = { dataType: 'int32', - shape: [1], + shape: [4], + readable: true, writable: true, }; - let mlTensor = await mlContext.createTensor(tensorDescriptor); - const tensorByteLength = sizeOfDescriptor(tensorDescriptor); - let arrayBuffer = new ArrayBuffer(tensorByteLength); - // Writing with a size that goes past that source tensor length. - assert_throws_js( - TypeError, - () => mlContext.writeTensor( - mlTensor, new Uint8Array(arrayBuffer), /*srcOffset=*/ 0, - /*srcSize=*/ tensorByteLength + 1)); - assert_throws_js( - TypeError, - () => mlContext.writeTensor( - mlTensor, new Uint8Array(arrayBuffer), /*srcOffset=*/ 3, - /*srcSize=*/ tensorByteLength)); + // Required to use SharedArrayBuffer. + assert_true( + self.crossOriginIsolated, + 'The page is served with COOP and COEP, it should be cross-origin-isolated.'); - // Writing with a source offset that is out of range of the source size. - assert_throws_js( - TypeError, - () => mlContext.writeTensor( - mlTensor, new Uint8Array(arrayBuffer), - /*srcOffset=*/ tensorByteLength + 1)); + let arrayBuffer = new ArrayBuffer(tensorByteLength); + let arrayBufferView = new Int32Array(arrayBuffer); + arrayBufferView.fill(7); + + let sharedArrayBuffer = new SharedArrayBuffer(tensorByteLength); + let sharedArrayBufferView = new Int32Array(sharedArrayBuffer); + sharedArrayBufferView.fill(7); + + const tensors = await Promise.all([ + mlContext.createTensor(tensorDescriptor), + mlContext.createTensor(tensorDescriptor), + mlContext.createTensor(tensorDescriptor), + mlContext.createTensor(tensorDescriptor) + ]); + + mlContext.writeTensor(tensors[0], arrayBuffer); + mlContext.writeTensor(tensors[2], arrayBufferView); + mlContext.writeTensor(tensors[1], sharedArrayBuffer); + mlContext.writeTensor(tensors[3], sharedArrayBufferView); + + await Promise.all(tensors.map(async (tensor) => { + assert_tensor_data_equals(mlContext, tensor, arrayBufferView); + })); + }, `${testName} / write with different kinds of buffers`); - // Writing with a source offset that is out of range of implicit copy size. - assert_throws_js( - TypeError, - () => mlContext.writeTensor( - mlTensor, new Uint8Array(arrayBuffer), - /*srcOffset=*/ tensorByteLength + 1, /*srcSize=*/ undefined)); + promise_test(async () => { + const tensorDescriptor = { + dataType: 'int32', + shape: [1], + writable: true, + }; + let mlTensor = await mlContext.createTensor(tensorDescriptor); + + const tensorByteLength = sizeOfDescriptor(tensorDescriptor); + // Writing with a buffer larger than the source tensor. assert_throws_js( TypeError, () => mlContext.writeTensor( - mlTensor, new Uint8Array(arrayBuffer), /*srcOffset=*/ undefined, - /*srcSize=*/ tensorByteLength + 1)); - + mlTensor, new ArrayBuffer(tensorByteLength + 1))); + // Writing with a buffer smaller than the source tensor. assert_throws_js( TypeError, () => mlContext.writeTensor( - mlTensor, Uint8Array.from([0xEE, 0xEE, 0xEE, 0xEE, 0xEE]))); - }, `${testName} / error`); + mlTensor, new ArrayBuffer(tensorByteLength - 1))); + }, `${testName} / write with buffer of wrong size`); promise_test(async () => { const tensorDescriptor = { @@ -252,26 +264,15 @@ const testWriteTensor = (testName) => { promise_test(async () => { let mlTensor = await mlContext.createTensor({ dataType: 'int32', - shape: [1], + shape: [], readable: true, writable: true, }); - // Initialize the tensor. - const inputData = Uint8Array.from([0xAA, 0xAA, 0xAA, 0xAA]); + const inputData = Int32Array.from([0xAAAABBBB]); mlContext.writeTensor(mlTensor, inputData); - - // Writing zero bytes from a zero write size. - mlContext.writeTensor(mlTensor, Uint8Array.from([0xBB]), 0, 0); - - await assert_tensor_data_equals(mlContext, mlTensor, inputData); - - // Writing zero bytes at the end of the tensor. - mlContext.writeTensor( - mlTensor, Uint32Array.from([0xBBBBBBBB]), /*srcOffset=*/ 1); - await assert_tensor_data_equals(mlContext, mlTensor, inputData); - }, `${testName} / zero_write`); + }, `${testName} / scalar`); promise_test(async () => { const tensorDescriptor = { @@ -285,17 +286,17 @@ const testWriteTensor = (testName) => { const tensorByteLength = sizeOfDescriptor(tensorDescriptor); let inputBuffer = new ArrayBuffer(tensorByteLength); - // Initialize the tensor. const int32View = new Int32Array(inputBuffer); int32View.fill(0xBBBBBBBB); mlContext.writeTensor(mlTensor, int32View); - // Writing to a detached buffer should be ignored. + // Writing to a detached buffer should fail. const detachedBuffer = inputBuffer.transfer(); assert_true(inputBuffer.detached, 'array buffer should be detached.'); - mlContext.writeTensor(mlTensor, inputBuffer); + assert_throws_js( + TypeError, () => mlContext.writeTensor(mlTensor, inputBuffer)); await assert_tensor_data_equals( mlContext, mlTensor, new Int32Array(detachedBuffer)); @@ -373,89 +374,14 @@ const testReadTensor = (testName) => { writable: true, }); - // Initialize the tensor. mlContext.writeTensor(mlTensor, Uint8Array.from([0xAA, 0xAA, 0xAA, 0xAA])); + // Write over previously-written data. mlContext.writeTensor(mlTensor, Uint32Array.from([0xBBBBBBBB])); await assert_tensor_data_equals( mlContext, mlTensor, Uint32Array.from([0xBBBBBBBB])); ; - }, `${testName} / full_size`); - - promise_test(async () => { - let mlTensor = await mlContext.createTensor({ - dataType: 'int32', - shape: [1], - readable: true, - writable: true, - }); - - // Initialize the tensor. - mlContext.writeTensor(mlTensor, Uint8Array.from([0xAA, 0xAA, 0xAA, 0xAA])); - - // Writing to the remainder of the tensor from source offset. - mlContext.writeTensor( - mlTensor, Uint8Array.from([0xCC, 0xCC, 0xBB, 0xBB]), - /*srcOffset=*/ 2); - await assert_tensor_data_equals( - mlContext, mlTensor, Uint8Array.from([0xBB, 0xBB, 0xAA, 0xAA])); - }, `${testName} / src_offset_only`); - - promise_test(async () => { - let mlTensor = await mlContext.createTensor({ - dataType: 'int32', - shape: [1], - readable: true, - writable: true, - }); - - // Initialize the tensor. - mlContext.writeTensor(mlTensor, Uint8Array.from([0xAA, 0xAA, 0xAA, 0xAA])); - - // Writing with both a source offset and size. - mlContext.writeTensor( - mlTensor, Uint8Array.from([0xDD, 0xDD, 0xCC, 0xDD]), - /*srcOffset=*/ 2, /*srcSize=*/ 1); - await assert_tensor_data_equals( - mlContext, mlTensor, Uint8Array.from([0xCC, 0xAA, 0xAA, 0xAA])); - }, `${testName} / src_offset_and_size`); - - promise_test(async () => { - let mlTensor = await mlContext.createTensor({ - dataType: 'int32', - shape: [1], - readable: true, - writable: true, - }); - - // Initialize the tensor. - mlContext.writeTensor(mlTensor, Uint8Array.from([0xAA, 0xAA, 0xAA, 0xAA])); - - // Using an offset allows a larger source tensor to fit. - mlContext.writeTensor( - mlTensor, Uint8Array.from([0xEE, 0xEE, 0xEE, 0xEE, 0xEE]), - /*srcOffset=*/ 1); - await assert_tensor_data_equals( - mlContext, mlTensor, Uint8Array.from([0xEE, 0xEE, 0xEE, 0xEE])); - }, `${testName} / larger_src_data`); - - promise_test(async () => { - let mlTensor = await mlContext.createTensor({ - dataType: 'int32', - shape: [1], - readable: true, - writable: true, - }); - - const inputData = [0xAA, 0xAA, 0xAA, 0xAA]; - - // Writing with a source offset of undefined should be treated as 0. - mlContext.writeTensor( - mlTensor, Uint8Array.from(inputData), /*srcOffset=*/ undefined, - /*srcSize=*/ inputData.length); - await assert_tensor_data_equals( - mlContext, mlTensor, Uint8Array.from(inputData)); - }, `${testName} / no_src_offset`); + }, `${testName} / overwrite`); promise_test(async t => { const tensorDescriptor = { diff --git a/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js.headers b/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js.headers new file mode 100644 index 00000000000..5f8621ef836 --- /dev/null +++ b/tests/wpt/tests/webnn/conformance_tests/tensor.https.any.js.headers @@ -0,0 +1,2 @@ +Cross-Origin-Embedder-Policy: require-corp +Cross-Origin-Opener-Policy: same-origin diff --git a/tests/wpt/tests/webnn/resources/utils.js b/tests/wpt/tests/webnn/resources/utils.js index 973c16baca7..112d4877486 100644 --- a/tests/wpt/tests/webnn/resources/utils.js +++ b/tests/wpt/tests/webnn/resources/utils.js @@ -26,7 +26,7 @@ const getSoftmaxPrecisionTolerance = if (inputs[inputIndex]) { inputShape = inputs[inputIndex].descriptor.shape; } else { - inputShape = intermediateOperands[inputIndex].shape(); + inputShape = intermediateOperands[inputIndex].shape; } const axis = args.length === 2 ? args[1][Object.keys(args[1])[0]] : 1; const tolerance = inputShape[axis] * 3 + 3; @@ -132,10 +132,10 @@ const assertDescriptorsEquals = (outputOperand, expected) => { const dataType = expected.castedType ? expected.castedType : expected.dataType; assert_true( - outputOperand.dataType() === dataType, + outputOperand.dataType === dataType, 'actual output dataType should be equal to expected output dataType'); assert_array_equals( - outputOperand.shape(), expected.shape, + outputOperand.shape, expected.shape, 'actual output shape should be equal to expected output shape'); }; @@ -634,7 +634,7 @@ const getGemmPrecisionTolerance = if (inputs[indexA]) { ShapeA = inputs[indexA].descriptor.shape; } else { - ShapeA = intermediateOperands[indexA].shape(); + ShapeA = intermediateOperands[indexA].shape; } const options = args.length === 3 ? {...args[2][Object.keys(args[2])[0]]} : {}; @@ -671,13 +671,13 @@ const getConv2dPrecisionTolerance = if (inputs[inputIndex]) { inputShape = inputs[inputIndex].descriptor.shape; } else { - inputShape = intermediateOperands[inputIndex].shape(); + inputShape = intermediateOperands[inputIndex].shape; } let filterShape; if (inputs[filterIndex]) { filterShape = inputs[filterIndex].descriptor.shape; } else { - filterShape = intermediateOperands[filterIndex].shape(); + filterShape = intermediateOperands[filterIndex].shape; } const options = args.length === 3 ? {...args[2][Object.keys(args[2])[0]]} : {}; diff --git a/tests/wpt/tests/webnn/resources/utils_validation.js b/tests/wpt/tests/webnn/resources/utils_validation.js index f491801bf3a..0f07b777def 100644 --- a/tests/wpt/tests/webnn/resources/utils_validation.js +++ b/tests/wpt/tests/webnn/resources/utils_validation.js @@ -438,8 +438,8 @@ function validateUnaryOperation(operationName, supportedDataTypes, label) { const input = builder.input(`input`, {dataType, shape}); assert_equals(typeof builder[operationName], 'function'); const output = builder[operationName](input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), shape); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, shape); } } }, `[${operationName}] Test building an unary operator with supported type.`); @@ -484,8 +484,8 @@ function validateSingleInputOperation(operationName, label) { for (let shape of allWebNNShapesArray) { const input = builder.input(`input`, {dataType, shape}); const output = builder[operationName](input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), shape); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, shape); } } }, `[${operationName}] Test building the operator with supported data type.`); diff --git a/tests/wpt/tests/webnn/validation_tests/argMinMax.https.any.js b/tests/wpt/tests/webnn/validation_tests/argMinMax.https.any.js index abd4e878a2a..a6c74f1fb41 100644 --- a/tests/wpt/tests/webnn/validation_tests/argMinMax.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/argMinMax.https.any.js @@ -74,8 +74,8 @@ function runTests(operatorName, tests) { if (context.opSupportLimits()[operatorName].output.dataTypes.includes( test.options.outputDataType)) { const output = builder[operatorName](input, axis, test.options); - assert_equals(output.dataType(), test.options.outputDataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.options.outputDataType); + assert_array_equals(output.shape, test.output.shape); } else { assert_throws_js( TypeError, () => builder[operatorName](input, axis, test.options)); @@ -84,8 +84,8 @@ function runTests(operatorName, tests) { } if (test.output) { const output = builder[operatorName](input, axis, test.options); - assert_equals(output.dataType(), 'int32'); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, 'int32'); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = /\[arg_min_max_1_\!\]/; assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/batchNormalization.https.any.js b/tests/wpt/tests/webnn/validation_tests/batchNormalization.https.any.js index 636f803ecb7..d503899a193 100644 --- a/tests/wpt/tests/webnn/validation_tests/batchNormalization.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/batchNormalization.https.any.js @@ -267,8 +267,8 @@ tests.forEach( if (test.output) { const output = builder.batchNormalization(input, mean, variance, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = /\[batchNormalization_\?_123\]/; assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/clamp.https.any.js b/tests/wpt/tests/webnn/validation_tests/clamp.https.any.js index e76092daf43..787c40fea60 100644 --- a/tests/wpt/tests/webnn/validation_tests/clamp.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/clamp.https.any.js @@ -18,8 +18,8 @@ promise_test(async t => { const options = {minValue: 1.0, maxValue: 3.0}; const input = builder.input('input', {dataType: 'float32', shape: [1, 2, 3]}); const output = builder.clamp(input, options); - assert_equals(output.dataType(), 'float32'); - assert_array_equals(output.shape(), [1, 2, 3]); + assert_equals(output.dataType, 'float32'); + assert_array_equals(output.shape, [1, 2, 3]); }, '[clamp] Build with options'); promise_test(async t => { @@ -28,8 +28,8 @@ promise_test(async t => { const input = builder.input('input', {dataType: 'float32', shape: [1, 2, 3, 4]}); const output = builder.clamp(input, options); - assert_equals(output.dataType(), 'float32'); - assert_array_equals(output.shape(), [1, 2, 3, 4]); + assert_equals(output.dataType, 'float32'); + assert_array_equals(output.shape, [1, 2, 3, 4]); }, '[clamp] Build with options.minValue == options.maxValue'); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/concat.https.any.js b/tests/wpt/tests/webnn/validation_tests/concat.https.any.js index 65c56a84246..6ccac4e7e8b 100644 --- a/tests/wpt/tests/webnn/validation_tests/concat.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/concat.https.any.js @@ -97,8 +97,8 @@ tests.forEach( } if (test.output) { const output = builder.concat(inputs, test.axis); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {label}; const regrexp = new RegExp('\\[' + label + '\\]'); diff --git a/tests/wpt/tests/webnn/validation_tests/constant.https.any.js b/tests/wpt/tests/webnn/validation_tests/constant.https.any.js index fc0243197db..dccb41d4b24 100644 --- a/tests/wpt/tests/webnn/validation_tests/constant.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/constant.https.any.js @@ -129,8 +129,8 @@ tests.forEach( const bufferView = new test.bufferView.type(buffer); if (test.output) { const constantOperand = builder.constant(test.descriptor, bufferView); - assert_equals(constantOperand.dataType(), test.output.dataType); - assert_array_equals(constantOperand.shape(), test.output.shape); + assert_equals(constantOperand.dataType, test.output.dataType); + assert_array_equals(constantOperand.shape, test.output.shape); } else { assert_throws_js( TypeError, () => builder.constant(test.descriptor, bufferView)); diff --git a/tests/wpt/tests/webnn/validation_tests/conv2d.https.any.js b/tests/wpt/tests/webnn/validation_tests/conv2d.https.any.js index 405538ff4d8..eda93e38b2b 100644 --- a/tests/wpt/tests/webnn/validation_tests/conv2d.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/conv2d.https.any.js @@ -550,8 +550,8 @@ tests.forEach( context.opSupportLimits().conv2d.input.dataTypes.includes( test.input.dataType)) { const output = builder.conv2d(input, filter, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = /\[conv_2d_\*\]/; assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/convTranspose2d.https.any.js b/tests/wpt/tests/webnn/validation_tests/convTranspose2d.https.any.js index c128903e9cc..cafb0e86e44 100644 --- a/tests/wpt/tests/webnn/validation_tests/convTranspose2d.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/convTranspose2d.https.any.js @@ -565,8 +565,8 @@ tests.forEach( context.opSupportLimits().convTranspose2d.input.dataTypes.includes( test.input.dataType)) { const output = builder.convTranspose2d(input, filter, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/cumulativeSum.https.any.js b/tests/wpt/tests/webnn/validation_tests/cumulativeSum.https.any.js index 6381d674ab4..9e6a22d825b 100644 --- a/tests/wpt/tests/webnn/validation_tests/cumulativeSum.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/cumulativeSum.https.any.js @@ -62,8 +62,8 @@ tests.forEach( } if (test.output) { const output = builder.cumulativeSum(input, test.axis, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'cumulative_sum'; options.label = label; diff --git a/tests/wpt/tests/webnn/validation_tests/dequantizeLinear.https.any.js b/tests/wpt/tests/webnn/validation_tests/dequantizeLinear.https.any.js index a5e6c8ea50e..d0dd2c15dff 100644 --- a/tests/wpt/tests/webnn/validation_tests/dequantizeLinear.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/dequantizeLinear.https.any.js @@ -83,8 +83,8 @@ tests.forEach( const zeroPoint = builder.input('zeroPoint', test.zeroPoint); if (test.output) { const output = builder.dequantizeLinear(input, scale, zeroPoint); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'dequantize_linear_123'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/elementwise-binary.https.any.js b/tests/wpt/tests/webnn/validation_tests/elementwise-binary.https.any.js index e578a343468..32777f84681 100644 --- a/tests/wpt/tests/webnn/validation_tests/elementwise-binary.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/elementwise-binary.https.any.js @@ -73,8 +73,8 @@ function runElementWiseBinaryTests(operatorName, tests) { if (test.output) { const output = builder[operatorName](a, b); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {label}; assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/elu.https.any.js b/tests/wpt/tests/webnn/validation_tests/elu.https.any.js index 4fe08b1b0ce..5ddcdaf8484 100644 --- a/tests/wpt/tests/webnn/validation_tests/elu.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/elu.https.any.js @@ -19,8 +19,8 @@ promise_test(async t => { const options = {alpha: 1.0}; const input = builder.input('input', {dataType: 'float32', shape: [1, 2, 3]}); const output = builder.elu(input, options); - assert_equals(output.dataType(), 'float32'); - assert_array_equals(output.shape(), [1, 2, 3]); + assert_equals(output.dataType, 'float32'); + assert_array_equals(output.shape, [1, 2, 3]); }, '[elu] Build with options'); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/expand.https.any.js b/tests/wpt/tests/webnn/validation_tests/expand.https.any.js index 23fe94aedc1..c9c60358917 100644 --- a/tests/wpt/tests/webnn/validation_tests/expand.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/expand.https.any.js @@ -71,8 +71,8 @@ tests.forEach( if (test.output) { const output = builder.expand(input, test.newShape); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {...test.options}; if (options.label) { @@ -97,8 +97,8 @@ promise_test(async t => { const input = builder.input(`input`, {dataType, shape}); if (context.opSupportLimits().expand.input.dataTypes.includes(dataType)) { const output = builder.expand(input, newShape); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), newShape); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, newShape); } else { assert_throws_js(TypeError, () => builder.expand(input, newShape)); } diff --git a/tests/wpt/tests/webnn/validation_tests/gather.https.any.js b/tests/wpt/tests/webnn/validation_tests/gather.https.any.js index dbeacbfc279..e4a46a90d4b 100644 --- a/tests/wpt/tests/webnn/validation_tests/gather.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gather.https.any.js @@ -74,8 +74,8 @@ tests.forEach( if (test.output) { const output = builder.gather(input, indices, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'gather_' options.label = label; diff --git a/tests/wpt/tests/webnn/validation_tests/gatherElements.https.any.js b/tests/wpt/tests/webnn/validation_tests/gatherElements.https.any.js index 4c4b04490e8..e30e4a5a13b 100644 --- a/tests/wpt/tests/webnn/validation_tests/gatherElements.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gatherElements.https.any.js @@ -64,8 +64,8 @@ tests.forEach( if (test.output) { const output = builder.gatherElements(input, indices, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'gatherElements_' options.label = label; diff --git a/tests/wpt/tests/webnn/validation_tests/gatherND.https.any.js b/tests/wpt/tests/webnn/validation_tests/gatherND.https.any.js index a8bfa2b336b..697dda00776 100644 --- a/tests/wpt/tests/webnn/validation_tests/gatherND.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gatherND.https.any.js @@ -46,8 +46,8 @@ tests.forEach(test => promise_test(async t => { context.opSupportLimits().gatherND.input.dataTypes.includes( test.input.dataType)) { const output = builder.gatherND(input, indices); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'gatherND_'; const options = {label: label}; diff --git a/tests/wpt/tests/webnn/validation_tests/gemm.https.any.js b/tests/wpt/tests/webnn/validation_tests/gemm.https.any.js index cad1806b5ff..6115003d039 100644 --- a/tests/wpt/tests/webnn/validation_tests/gemm.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gemm.https.any.js @@ -164,8 +164,8 @@ tests.forEach( } if (test.output) { const output = builder.gemm(a, b, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/gru.https.any.js b/tests/wpt/tests/webnn/validation_tests/gru.https.any.js index 158384a4b78..e074a27648f 100644 --- a/tests/wpt/tests/webnn/validation_tests/gru.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gru.https.any.js @@ -300,8 +300,8 @@ tests.forEach( options); assert_equals(outputs.length, test.outputs.length); for (let i = 0; i < outputs.length; ++i) { - assert_equals(outputs[i].dataType(), test.outputs[i].dataType); - assert_array_equals(outputs[i].shape(), test.outputs[i].shape); + assert_equals(outputs[i].dataType, test.outputs[i].dataType); + assert_array_equals(outputs[i].shape, test.outputs[i].shape); } } else { const label = 'gru_xxx'; diff --git a/tests/wpt/tests/webnn/validation_tests/gruCell.https.any.js b/tests/wpt/tests/webnn/validation_tests/gruCell.https.any.js index 7bbb9afcff0..b176b379330 100644 --- a/tests/wpt/tests/webnn/validation_tests/gruCell.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/gruCell.https.any.js @@ -298,8 +298,8 @@ tests.forEach( const output = builder.gruCell( input, weight, recurrentWeight, hiddenState, test.hiddenSize, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'gru_cell_xxx'; options.label = label; diff --git a/tests/wpt/tests/webnn/validation_tests/hardSigmoid.https.any.js b/tests/wpt/tests/webnn/validation_tests/hardSigmoid.https.any.js index 8134863a311..f3a9ea0ba0e 100644 --- a/tests/wpt/tests/webnn/validation_tests/hardSigmoid.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/hardSigmoid.https.any.js @@ -18,8 +18,8 @@ promise_test(async t => { const options = {alpha: 0.5, beta: 1.0}; const input = builder.input('input', {dataType: 'float16', shape: [1, 2, 3]}); const output = builder.hardSigmoid(input, options); - assert_equals(output.dataType(), 'float16'); - assert_array_equals(output.shape(), [1, 2, 3]); + assert_equals(output.dataType, 'float16'); + assert_array_equals(output.shape, [1, 2, 3]); }, '[hardSigmoid] Test building with options'); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/input.https.any.js b/tests/wpt/tests/webnn/validation_tests/input.https.any.js index b5b257d8bb0..cc60c445670 100644 --- a/tests/wpt/tests/webnn/validation_tests/input.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/input.https.any.js @@ -58,8 +58,8 @@ tests.forEach( const builder = new MLGraphBuilder(context); if (test.output) { const inputOperand = builder.input(test.name, test.descriptor); - assert_equals(inputOperand.dataType(), test.output.dataType); - assert_array_equals(inputOperand.shape(), test.output.shape); + assert_equals(inputOperand.dataType, test.output.dataType); + assert_array_equals(inputOperand.shape, test.output.shape); } else { assert_throws_js( TypeError, () => builder.input(test.name, test.descriptor)); diff --git a/tests/wpt/tests/webnn/validation_tests/instanceNormalization.https.any.js b/tests/wpt/tests/webnn/validation_tests/instanceNormalization.https.any.js index 618be23fdec..f09e67da414 100644 --- a/tests/wpt/tests/webnn/validation_tests/instanceNormalization.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/instanceNormalization.https.any.js @@ -193,8 +193,8 @@ tests.forEach( .instanceNormalization.input.dataTypes.includes( test.input.dataType)) { const output = builder.instanceNormalization(input, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/layerNormalization.https.any.js b/tests/wpt/tests/webnn/validation_tests/layerNormalization.https.any.js index 97bb479f04d..445bace9651 100644 --- a/tests/wpt/tests/webnn/validation_tests/layerNormalization.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/layerNormalization.https.any.js @@ -210,8 +210,8 @@ tests.forEach( context.opSupportLimits().layerNormalization.input.dataTypes.includes( test.input.dataType)) { const output = builder.layerNormalization(input, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/leakyRelu.https.any.js b/tests/wpt/tests/webnn/validation_tests/leakyRelu.https.any.js index c49ac659ef4..b64d7681d93 100644 --- a/tests/wpt/tests/webnn/validation_tests/leakyRelu.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/leakyRelu.https.any.js @@ -17,8 +17,8 @@ promise_test(async t => { const options = {alpha: 0.02}; const input = builder.input('input', {dataType: 'float32', shape: [1, 2, 3]}); const output = builder.leakyRelu(input, options); - assert_equals(output.dataType(), 'float32'); - assert_array_equals(output.shape(), [1, 2, 3]); + assert_equals(output.dataType, 'float32'); + assert_array_equals(output.shape, [1, 2, 3]); }, '[leakyRelu] Build with options'); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/linear.https.any.js b/tests/wpt/tests/webnn/validation_tests/linear.https.any.js index 816dad35039..d904b9290ff 100644 --- a/tests/wpt/tests/webnn/validation_tests/linear.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/linear.https.any.js @@ -17,8 +17,8 @@ promise_test(async t => { const options = {alpha: 1.5, beta: 0.3}; const input = builder.input('input', {dataType: 'float32', shape: [1, 2, 3]}); const output = builder.linear(input, options); - assert_equals(output.dataType(), 'float32'); - assert_array_equals(output.shape(), [1, 2, 3]); + assert_equals(output.dataType, 'float32'); + assert_array_equals(output.shape, [1, 2, 3]); }, '[linear] Build with options'); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/lstm.https.any.js b/tests/wpt/tests/webnn/validation_tests/lstm.https.any.js index 8cc2a014a7c..8d8175ecb09 100644 --- a/tests/wpt/tests/webnn/validation_tests/lstm.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/lstm.https.any.js @@ -296,8 +296,8 @@ tests.forEach( options); assert_equals(outputs.length, test.outputs.length); for (let i = 0; i < outputs.length; ++i) { - assert_equals(outputs[i].dataType(), test.outputs[i].dataType); - assert_array_equals(outputs[i].shape(), test.outputs[i].shape); + assert_equals(outputs[i].dataType, test.outputs[i].dataType); + assert_array_equals(outputs[i].shape, test.outputs[i].shape); } } else { const label = 'lstm_xxx'; diff --git a/tests/wpt/tests/webnn/validation_tests/lstmCell.https.any.js b/tests/wpt/tests/webnn/validation_tests/lstmCell.https.any.js index a739761d56e..a4e15af1b25 100644 --- a/tests/wpt/tests/webnn/validation_tests/lstmCell.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/lstmCell.https.any.js @@ -523,8 +523,8 @@ tests.forEach( test.hiddenSize, options); assert_equals(outputs.length, test.outputs.length); for (let i = 0; i < outputs.length; ++i) { - assert_equals(outputs[i].dataType(), test.outputs[i].dataType); - assert_array_equals(outputs[i].shape(), test.outputs[i].shape); + assert_equals(outputs[i].dataType, test.outputs[i].dataType); + assert_array_equals(outputs[i].shape, test.outputs[i].shape); } } else { const label = 'lstm_cell_xxx'; diff --git a/tests/wpt/tests/webnn/validation_tests/matmul.https.any.js b/tests/wpt/tests/webnn/validation_tests/matmul.https.any.js index 4f8a1ee59a3..86440e2b0f1 100644 --- a/tests/wpt/tests/webnn/validation_tests/matmul.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/matmul.https.any.js @@ -109,8 +109,8 @@ tests.forEach(test => promise_test(async t => { const inputB = builder.input('b', test.inputs.b); if (test.output) { const output = builder.matmul(inputA, inputB); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'matmul_123'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/pad.https.any.js b/tests/wpt/tests/webnn/validation_tests/pad.https.any.js index b45f68ab014..ca11bd2c969 100644 --- a/tests/wpt/tests/webnn/validation_tests/pad.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/pad.https.any.js @@ -82,8 +82,8 @@ tests.forEach( if (test.output) { const output = builder.pad( input, test.beginningPadding, test.endingPadding, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( diff --git a/tests/wpt/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js b/tests/wpt/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js index 3beee94cd44..969c5c61a49 100644 --- a/tests/wpt/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/pooling-and-reduction-keep-dims.https.any.js @@ -42,8 +42,8 @@ promise_test(async t => { }); const newShape = [1, 1001]; const reshapeOutput = builder.reshape(conv2dOutput, newShape); - assert_equals(reshapeOutput.dataType(), avgPool2dInput.dataType()); - assert_array_equals(reshapeOutput.shape(), newShape); + assert_equals(reshapeOutput.dataType, avgPool2dInput.dataType); + assert_array_equals(reshapeOutput.shape, newShape); const graph = await builder.build({reshapeOutput}); const result = await context.compute( graph, { @@ -86,8 +86,8 @@ promise_test(async t => { }); const newShape = [1, 1001]; const reshapeOutput = builder.reshape(conv2dOutput, newShape); - assert_equals(reshapeOutput.dataType(), reduceMeanInput.dataType()); - assert_array_equals(reshapeOutput.shape(), newShape); + assert_equals(reshapeOutput.dataType, reduceMeanInput.dataType); + assert_array_equals(reshapeOutput.shape, newShape); const graph = await builder.build({reshapeOutput}); const result = await context.compute( graph, { diff --git a/tests/wpt/tests/webnn/validation_tests/pooling.https.any.js b/tests/wpt/tests/webnn/validation_tests/pooling.https.any.js index d862d807ab4..e02d41e996b 100644 --- a/tests/wpt/tests/webnn/validation_tests/pooling.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/pooling.https.any.js @@ -305,8 +305,8 @@ tests.forEach( kPoolingOperators.forEach((operatorName) => { if (test.output) { const output = builder[operatorName](input, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( @@ -320,8 +320,8 @@ tests.forEach( const builder = new MLGraphBuilder(context); const input = builder.input('input', {dataType, shape: [1, 3, 4, 4]}); const output = builder.maxPool2d(input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), [1, 3, 1, 1]); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, [1, 3, 1, 1]); }, `[maxPool2d] Test maxPool2d with data type ${dataType}`)); promise_test(async t => { diff --git a/tests/wpt/tests/webnn/validation_tests/prelu.https.any.js b/tests/wpt/tests/webnn/validation_tests/prelu.https.any.js index 94eb6995374..e3a43c61d8d 100644 --- a/tests/wpt/tests/webnn/validation_tests/prelu.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/prelu.https.any.js @@ -59,8 +59,8 @@ tests.forEach( const slope = builder.input('input', test.slope); if (test.output) { const output = builder.prelu(input, slope); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'prelu_123'; const options = {label}; @@ -80,8 +80,8 @@ promise_test(async t => { const input = builder.input(`input`, {dataType, shape}); if (context.opSupportLimits().prelu.input.dataTypes.includes(dataType)) { const output = builder.prelu(input, input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), shape); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, shape); } else { assert_throws_js(TypeError, () => builder.prelu(input, input)); } diff --git a/tests/wpt/tests/webnn/validation_tests/quantizeLinear.https.any.js b/tests/wpt/tests/webnn/validation_tests/quantizeLinear.https.any.js index 2f0b21d225a..42b8ac4b1f2 100644 --- a/tests/wpt/tests/webnn/validation_tests/quantizeLinear.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/quantizeLinear.https.any.js @@ -82,8 +82,8 @@ tests.forEach( const zeroPoint = builder.input('zeroPoint', test.zeroPoint); if (test.output) { const output = builder.quantizeLinear(input, scale, zeroPoint); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'quantize_linear_123'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/reduction.https.any.js b/tests/wpt/tests/webnn/validation_tests/reduction.https.any.js index b56306351f0..d872b7fb4f0 100644 --- a/tests/wpt/tests/webnn/validation_tests/reduction.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/reduction.https.any.js @@ -63,8 +63,8 @@ function runReductionTests(operatorName, tests) { if (test.output) { const output = builder[operatorName](input, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const regrexp = new RegExp('\\[' + label + '\\]'); assert_throws_with_label( @@ -90,8 +90,8 @@ kReductionOperators.forEach((operatorName) => { if (context.opSupportLimits()[operatorName].input.dataTypes.includes( dataType)) { const output = builder[operatorName](input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), []); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, []); } else { assert_throws_js(TypeError, () => builder[operatorName](input)); } diff --git a/tests/wpt/tests/webnn/validation_tests/resample2d.https.any.js b/tests/wpt/tests/webnn/validation_tests/resample2d.https.any.js index df2b85d02de..1278143d232 100644 --- a/tests/wpt/tests/webnn/validation_tests/resample2d.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/resample2d.https.any.js @@ -204,8 +204,8 @@ tests.forEach( const options = test.options ?? {}; if (test.output) { const output = builder.resample2d(input, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {...test.options}; if (options.label) { @@ -232,8 +232,8 @@ promise_test(async t => { if (context.opSupportLimits().resample2d.input.dataTypes.includes( dataType)) { const output = builder.resample2d(input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), shape); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, shape); } else { assert_throws_js(TypeError, () => builder.resample2d(input)); } diff --git a/tests/wpt/tests/webnn/validation_tests/reshape.https.any.js b/tests/wpt/tests/webnn/validation_tests/reshape.https.any.js index 7e49cada67a..67c895be9b7 100644 --- a/tests/wpt/tests/webnn/validation_tests/reshape.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/reshape.https.any.js @@ -72,8 +72,8 @@ tests.forEach( const input = builder.input('input', test.input); if (test.output) { const output = builder.reshape(input, test.newShape); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'reshape_xxx'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/scatterElements.https.any.js b/tests/wpt/tests/webnn/validation_tests/scatterElements.https.any.js index 15551b2bbe5..39e99ddfdfc 100644 --- a/tests/wpt/tests/webnn/validation_tests/scatterElements.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/scatterElements.https.any.js @@ -105,8 +105,8 @@ tests.forEach( if (test.output) { const output = builder.scatterElements(input, indices, updates, options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'a_scatter_elements' options.label = label; diff --git a/tests/wpt/tests/webnn/validation_tests/scatterND.https.any.js b/tests/wpt/tests/webnn/validation_tests/scatterND.https.any.js index 5e28471fffa..e529aea52ee 100644 --- a/tests/wpt/tests/webnn/validation_tests/scatterND.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/scatterND.https.any.js @@ -58,8 +58,8 @@ tests.forEach(test => promise_test(async t => { if (test.output) { const output = builder.scatterND(input, indices, updates); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'a_scatter_nd' const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/slice.https.any.js b/tests/wpt/tests/webnn/validation_tests/slice.https.any.js index 3fb3cdcd6f6..cc442d3d2b1 100644 --- a/tests/wpt/tests/webnn/validation_tests/slice.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/slice.https.any.js @@ -74,8 +74,8 @@ tests.forEach( if (test.output) { const output = builder.slice(input, test.starts, test.sizes); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'slice_xxx'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/softmax.https.any.js b/tests/wpt/tests/webnn/validation_tests/softmax.https.any.js index 4a5ee563070..eb7ebbd3070 100644 --- a/tests/wpt/tests/webnn/validation_tests/softmax.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/softmax.https.any.js @@ -34,8 +34,8 @@ tests_without_axis.forEach( let input = builder.input(`input`, test.input); if (test.output) { const output = builder.softmax(input); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = { label: 'softmax_xxx', @@ -89,8 +89,8 @@ tests.forEach( let input = builder.input(`input`, test.input); if (test.output) { const output = builder.softmax(input, test.axis); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'softmax_xxx'; const options = {label}; diff --git a/tests/wpt/tests/webnn/validation_tests/split.https.any.js b/tests/wpt/tests/webnn/validation_tests/split.https.any.js index c25f839168d..863e6a79c5f 100644 --- a/tests/wpt/tests/webnn/validation_tests/split.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/split.https.any.js @@ -111,8 +111,8 @@ tests.forEach( const outputs = builder.split(input, test.splits, test.options); assert_equals(outputs.length, test.outputs.length); for (let i = 0; i < outputs.length; ++i) { - assert_equals(outputs[i].dataType(), test.outputs[i].dataType); - assert_array_equals(outputs[i].shape(), test.outputs[i].shape); + assert_equals(outputs[i].dataType, test.outputs[i].dataType); + assert_array_equals(outputs[i].shape, test.outputs[i].shape); } } else { const regrexp = new RegExp('\\[' + label + '\\]'); diff --git a/tests/wpt/tests/webnn/validation_tests/tile.https.any.js b/tests/wpt/tests/webnn/validation_tests/tile.https.any.js index 6ad81cba4be..06733540917 100644 --- a/tests/wpt/tests/webnn/validation_tests/tile.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/tile.https.any.js @@ -58,8 +58,8 @@ tests.forEach( const input = builder.input('input', test.input); if (test.output) { const output = builder.tile(input, test.repetitions, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {...test.options}; if (options.label) { diff --git a/tests/wpt/tests/webnn/validation_tests/transpose.https.any.js b/tests/wpt/tests/webnn/validation_tests/transpose.https.any.js index a79e14008a6..67a05ce057c 100644 --- a/tests/wpt/tests/webnn/validation_tests/transpose.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/transpose.https.any.js @@ -58,8 +58,8 @@ tests.forEach( const input = builder.input('input', test.input); if (test.output) { const output = builder.transpose(input, test.options); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const options = {...test.options}; if (options.label) { @@ -83,8 +83,8 @@ promise_test(async t => { if (context.opSupportLimits().transpose.input.dataTypes.includes( dataType)) { const output = builder.transpose(input); - assert_equals(output.dataType(), dataType); - assert_array_equals(output.shape(), [4, 3, 2, 1]); + assert_equals(output.dataType, dataType); + assert_array_equals(output.shape, [4, 3, 2, 1]); } else { assert_throws_js(TypeError, () => builder.transpose(input)); } diff --git a/tests/wpt/tests/webnn/validation_tests/where.https.any.js b/tests/wpt/tests/webnn/validation_tests/where.https.any.js index 2f1941556b1..424d080c009 100644 --- a/tests/wpt/tests/webnn/validation_tests/where.https.any.js +++ b/tests/wpt/tests/webnn/validation_tests/where.https.any.js @@ -99,8 +99,8 @@ tests.forEach( context.opSupportLimits().where.falseValue.dataTypes.includes( test.falseValue.dataType)) { const output = builder.where(condition, trueValue, falseValue); - assert_equals(output.dataType(), test.output.dataType); - assert_array_equals(output.shape(), test.output.shape); + assert_equals(output.dataType, test.output.dataType); + assert_array_equals(output.shape, test.output.shape); } else { const label = 'where_123'; const options = {label}; |