mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Sync WPT with upstream (13-07-2025) (#38026)
Automated downstream sync of changes from upstream as of 13-07-2025 [no-wpt-sync] Signed-off-by: WPT Sync Bot <ghbot+wpt-sync@servo.org>
This commit is contained in:
parent
d38ffb82b2
commit
973465a9b6
54 changed files with 1978 additions and 338 deletions
|
@ -14,6 +14,3 @@
|
||||||
|
|
||||||
[Opening a blob URL in a new window by clicking an <a> tag works immediately before revoking the URL.]
|
[Opening a blob URL in a new window by clicking an <a> tag works immediately before revoking the URL.]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Fetching a blob URL immediately before revoking it works in <script> tags.]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
168
tests/wpt/meta/MANIFEST.json
vendored
168
tests/wpt/meta/MANIFEST.json
vendored
|
@ -6448,6 +6448,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"filter-primitive-crash.html": [
|
||||||
|
"8b40745c746cdbfb233dae03af35b687d8115689",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"multiple-references-id-crash-001.html": [
|
"multiple-references-id-crash-001.html": [
|
||||||
"9ee04e1015d3c9fc04e8fab240a15d59ae92892d",
|
"9ee04e1015d3c9fc04e8fab240a15d59ae92892d",
|
||||||
[
|
[
|
||||||
|
@ -10325,6 +10332,13 @@
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
|
],
|
||||||
|
"firefox-bug-1966754.html": [
|
||||||
|
"4d2fd2b49fe1a12e1adf6d85757c4b7886b9047d",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"extensibility": {
|
"extensibility": {
|
||||||
|
@ -126855,6 +126869,19 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"position-area-percents-001.html": [
|
||||||
|
"df1f895e4e38a1b32894d546bf057d6cd88e4745",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-anchor-position/position-area-percents-001-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"position-area-scroll-adjust.html": [
|
"position-area-scroll-adjust.html": [
|
||||||
"128f23f95f02615f987380bb752a1cc383c604ce",
|
"128f23f95f02615f987380bb752a1cc383c604ce",
|
||||||
[
|
[
|
||||||
|
@ -272350,6 +272377,19 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"text-wrap-balance-line-clamp-005.html": [
|
||||||
|
"b7999903a7aac8152f32439db753c8752cd6c440",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-text/white-space/reference/text-wrap-balance-line-clamp-005-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"text-wrap-balance-overflow-001.html": [
|
"text-wrap-balance-overflow-001.html": [
|
||||||
"5f79832549bd6cb3ecfae01e6cf1320af864218c",
|
"5f79832549bd6cb3ecfae01e6cf1320af864218c",
|
||||||
[
|
[
|
||||||
|
@ -360460,12 +360500,12 @@
|
||||||
],
|
],
|
||||||
"permission-icon": {
|
"permission-icon": {
|
||||||
"icon-css-property-fill-reftest.html": [
|
"icon-css-property-fill-reftest.html": [
|
||||||
"130849e79ba0b572d453dbaf1e92764ae7d9acfe",
|
"0fbd8625e9f919d930547a6b20ae9a8ad401e88d",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
[
|
[
|
||||||
"/html/semantics/permission-element/permission-icon/standard-location-permission-element-ref.html",
|
"/html/semantics/permission-element/permission-icon/icon-css-property-fill-reftest-ref.html",
|
||||||
"!="
|
"!="
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
@ -420303,6 +420343,10 @@
|
||||||
"ecf54f1a9ac2d756cb78f4d2c0690c1ac8b65916",
|
"ecf54f1a9ac2d756cb78f4d2c0690c1ac8b65916",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"position-area-percents-001-ref.html": [
|
||||||
|
"80ffe68a85b957999f05cae0949a723e11f28e3c",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"position-area-scroll-adjust-ref.html": [
|
"position-area-scroll-adjust-ref.html": [
|
||||||
"5cd863500a7729a8acf0eaab5883ca58cfcfb935",
|
"5cd863500a7729a8acf0eaab5883ca58cfcfb935",
|
||||||
[]
|
[]
|
||||||
|
@ -453553,6 +453597,10 @@
|
||||||
"06826aa8cf3f0b4d66749b246521f841d23f978f",
|
"06826aa8cf3f0b4d66749b246521f841d23f978f",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"text-wrap-balance-line-clamp-005-ref.html": [
|
||||||
|
"56c9e2459bbb6a1f5c786e3648b44b50c67b413e",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"text-wrap-balance-overflow-001-ref.html": [
|
"text-wrap-balance-overflow-001-ref.html": [
|
||||||
"64a1cf3d8d5f097b667bc3ae543afb9fdc4c8d04",
|
"64a1cf3d8d5f097b667bc3ae543afb9fdc4c8d04",
|
||||||
[]
|
[]
|
||||||
|
@ -487435,6 +487483,10 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"permission-icon": {
|
"permission-icon": {
|
||||||
|
"icon-css-property-fill-reftest-ref.html": [
|
||||||
|
"10f8e7982f2745c4c8b2ae37c93b56895dc5c015",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"icon-css-property-height-bounded-reftest-ref.html": [
|
"icon-css-property-height-bounded-reftest-ref.html": [
|
||||||
"73ad9d5bac7abaa3acee7e0bbe6eb95e68e6b9bf",
|
"73ad9d5bac7abaa3acee7e0bbe6eb95e68e6b9bf",
|
||||||
[]
|
[]
|
||||||
|
@ -489167,7 +489219,7 @@
|
||||||
],
|
],
|
||||||
"resources": {
|
"resources": {
|
||||||
"invoker-utils.js": [
|
"invoker-utils.js": [
|
||||||
"f06d668632f3f0367b0d1437ab44bd6d8cb76401",
|
"7e4cdf580d21abcd6865938d2bf58902e13a9c16",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -523225,6 +523277,10 @@
|
||||||
"0c4f5ed519b0fd220a26cce71779039198bec18b",
|
"0c4f5ed519b0fd220a26cce71779039198bec18b",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"non-UTF8.wasm": [
|
||||||
|
"9a15244ad51d5e7bdef8da2e83ebc0de38de8c5a",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"resolve-export.wasm": [
|
"resolve-export.wasm": [
|
||||||
"d8fc92d022fbf4d1072da17bc8e0840054b51ddc",
|
"d8fc92d022fbf4d1072da17bc8e0840054b51ddc",
|
||||||
[]
|
[]
|
||||||
|
@ -596198,6 +596254,27 @@
|
||||||
},
|
},
|
||||||
"css-gaps": {
|
"css-gaps": {
|
||||||
"animation": {
|
"animation": {
|
||||||
|
"column-rule-outset-interpolation.html": [
|
||||||
|
"9a026986ec5c998fa93d07f86c39a563e30ebbf3",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"gap-decorations-outset-neutral-keyframe-001.html": [
|
||||||
|
"3793b2351798ac5a5e84f0f7ca9394aefc99107f",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"gap-decorations-outset-neutral-keyframe-002.html": [
|
||||||
|
"993606fc560913c2404cabad07f85bee0e309d0b",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"gap-decorations-width-neutral-keyframe-001.html": [
|
"gap-decorations-width-neutral-keyframe-001.html": [
|
||||||
"9e6557774f9ee8b2a0c1dd6ac35b93005e18cfa0",
|
"9e6557774f9ee8b2a0c1dd6ac35b93005e18cfa0",
|
||||||
[
|
[
|
||||||
|
@ -596212,6 +596289,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"row-rule-outset-interpolation.html": [
|
||||||
|
"ad6d90793556dad70b0493567cb837c92c11c6d4",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"row-rule-width-interpolation.html": [
|
"row-rule-width-interpolation.html": [
|
||||||
"edb364fa4b8c23bfe5cbb21622ae5a5a26ce0e99",
|
"edb364fa4b8c23bfe5cbb21622ae5a5a26ce0e99",
|
||||||
[
|
[
|
||||||
|
@ -602299,21 +602383,21 @@
|
||||||
"tentative": {
|
"tentative": {
|
||||||
"parsing": {
|
"parsing": {
|
||||||
"item-tolerance-computed.html": [
|
"item-tolerance-computed.html": [
|
||||||
"57f36c9f4a1a8ba728729ab2de1b0025cc81d47a",
|
"2d5a9125b6edcc5020a95f5729b466a876369110",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"item-tolerance-invalid.html": [
|
"item-tolerance-invalid.html": [
|
||||||
"6cdd0bd270c3119492b883ca22eee445a45ec4d4",
|
"ab8eb59af3cad51dca0b8b1a2f9aa96fb821f1e1",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"item-tolerance-valid.html": [
|
"item-tolerance-valid.html": [
|
||||||
"9dc6721541e79bb4b0d5c4b934c1650716f3cf6a",
|
"820ef8a9436451a78c5a4aa22949ecab5a4a87d4",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -603682,6 +603766,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"scroll-markers-computed.tentative.html": [
|
||||||
|
"edea9e48c9644d5719fd7b9d140b717d39850c77",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"scroll-markers-invalid.html": [
|
"scroll-markers-invalid.html": [
|
||||||
"5194d5ab72b2f1126fda82dfb2c3126bcf9c6ab5",
|
"5194d5ab72b2f1126fda82dfb2c3126bcf9c6ab5",
|
||||||
[
|
[
|
||||||
|
@ -603689,6 +603780,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"scroll-markers-invalid.tentative.html": [
|
||||||
|
"1c9ba6989e659412d34d1491a15c754689a224d4",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"scroll-markers-valid.html": [
|
"scroll-markers-valid.html": [
|
||||||
"760efc877288115388018f6d014fcca8d79863b3",
|
"760efc877288115388018f6d014fcca8d79863b3",
|
||||||
[
|
[
|
||||||
|
@ -743789,6 +743887,17 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"permission-icon": {
|
||||||
|
"icon-color-defaults-to-text-color.html": [
|
||||||
|
"a5f98cfe8aaf9e3243c5b63716e1eaedf898acc5",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"testdriver": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
"type-supported-feature-detect.tentative.html": [
|
"type-supported-feature-detect.tentative.html": [
|
||||||
"fb06f57672e0cb1b176fc72d188ec531eb74edff",
|
"fb06f57672e0cb1b176fc72d188ec531eb74edff",
|
||||||
[
|
[
|
||||||
|
@ -749102,7 +749211,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"interestfor-input-modalities.tentative.html": [
|
"interestfor-input-modalities.tentative.html": [
|
||||||
"990972adce6466e4b39cfe76323d4cbbc8a63a97",
|
"58994dbec22ba777cda233e6e12441e417875538",
|
||||||
[
|
[
|
||||||
"html/semantics/the-button-element/interest-for/interestfor-input-modalities.tentative.html?method=focus",
|
"html/semantics/the-button-element/interest-for/interestfor-input-modalities.tentative.html?method=focus",
|
||||||
{
|
{
|
||||||
|
@ -749146,26 +749255,8 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"interestfor-partial-interest.tentative.html": [
|
|
||||||
"a38a0a762cfced382e216af88ce680ed6f4d4575",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{
|
|
||||||
"testdriver": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"interestfor-popover-focus.tentative.html": [
|
|
||||||
"d9b1bca5b106d5f422b351b9dec373df4f42327d",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{
|
|
||||||
"testdriver": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"interestfor-pseudo-classes.tentative.html": [
|
"interestfor-pseudo-classes.tentative.html": [
|
||||||
"2004aa2b3d9e8f3c024e6a6d51faf0c2bbe55180",
|
"56344e35d1bc98273ab8988bb867f7ddcb8dbc95",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -774689,7 +774780,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"navigation-id-worker-created-entries.html": [
|
"navigation-id-worker-created-entries.html": [
|
||||||
"96fc57be1d426c9c364fe20359dafebf60380fd8",
|
"5c41ee8b86b530dcc06e26d1464e4204370344b9",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -843827,6 +843918,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"reuse-wasm-loaded-as-classic-script.tentative.html": [
|
||||||
|
"e0a90fe732558f48b390aa06c21ca8932cbbbf86",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"script-src-allows-source-phase-wasm.tentative.html": [
|
"script-src-allows-source-phase-wasm.tentative.html": [
|
||||||
"b96fc756e5c0edbe8a5e0c8c63c075b0028059dc",
|
"b96fc756e5c0edbe8a5e0c8c63c075b0028059dc",
|
||||||
[
|
[
|
||||||
|
@ -843855,6 +843953,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"source-phase-import-non-UTF8.tentative.html": [
|
||||||
|
"217b900eec3429d61b9b756550232b4eb851a39b",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"source-phase-preload.tentative.html": [
|
"source-phase-preload.tentative.html": [
|
||||||
"90bfb484741af90ff5d37cbf59062b47c6a732b9",
|
"90bfb484741af90ff5d37cbf59062b47c6a732b9",
|
||||||
[
|
[
|
||||||
|
@ -847921,7 +848026,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"k-rate-dynamics-compressor-connections.html": [
|
"k-rate-dynamics-compressor-connections.html": [
|
||||||
"c1755cd1559474a464024a2b0344c5dd1d95e803",
|
"15db310e12adddf8c175b7ae0bcbb18ddd042066",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -938657,6 +938762,13 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"parallel_execution": {
|
"parallel_execution": {
|
||||||
|
"browsing_context_print.py": [
|
||||||
|
"65bb73c254f20b83021aa58ac19ea4ed47178c5f",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"browsing_context_set_viewport.py": [
|
"browsing_context_set_viewport.py": [
|
||||||
"4625dad0d712af05c6f1495a73b97ac86278d5b9",
|
"4625dad0d712af05c6f1495a73b97ac86278d5b9",
|
||||||
[
|
[
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
[frame-ancestors-path-ignored.window.html]
|
||||||
|
[A 'frame-ancestors' CSP directive with a URL that includes a path should be ignored.]
|
||||||
|
expected: FAIL
|
|
@ -1,3 +0,0 @@
|
||||||
[layer-cssom-order-reverse.html]
|
|
||||||
[Delete layer invalidates @font-face]
|
|
||||||
expected: FAIL
|
|
504
tests/wpt/meta/css/css-gaps/animation/column-rule-outset-interpolation.html.ini
vendored
Normal file
504
tests/wpt/meta/css/css-gaps/animation/column-rule-outset-interpolation.html.ini
vendored
Normal file
|
@ -0,0 +1,504 @@
|
||||||
|
[column-rule-outset-interpolation.html]
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <column-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <column-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <column-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <column-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
3
tests/wpt/meta/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-001.html.ini
vendored
Normal file
3
tests/wpt/meta/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-001.html.ini
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[gap-decorations-outset-neutral-keyframe-001.html]
|
||||||
|
[gap decorations row-rule-outset value list supports neutral keyframe.]
|
||||||
|
expected: FAIL
|
3
tests/wpt/meta/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-002.html.ini
vendored
Normal file
3
tests/wpt/meta/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-002.html.ini
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[gap-decorations-outset-neutral-keyframe-002.html]
|
||||||
|
[gap decorations column-rule-outset value list supports neutral keyframe.]
|
||||||
|
expected: FAIL
|
504
tests/wpt/meta/css/css-gaps/animation/row-rule-outset-interpolation.html.ini
vendored
Normal file
504
tests/wpt/meta/css/css-gaps/animation/row-rule-outset-interpolation.html.ini
vendored
Normal file
|
@ -0,0 +1,504 @@
|
||||||
|
[row-rule-outset-interpolation.html]
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (-0.3) should be [2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (0) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (0.3) should be [8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (0.6) should be [11px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (1) should be [15px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from neutral to [15px\] at (1.5) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [initial\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (-0.3) should be [23px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0) should be [20px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0.3) should be [17px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (0.6) should be [14px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (1) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [inherit\] to [10px\] at (1.5) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (-0.3) should be [53%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (0) should be [50%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (0.3) should be [47%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (0.6) should be [44%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (1) should be [40%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [unset\] to [40%\] at (1.5) should be [35%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0) should be [-5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (1) should be [5px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (-0.3) should be [calc(130% - 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (0) should be [100%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (0.3) should be [calc(70% + 0.3px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (0.6) should be [calc(40% + 0.6px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (1) should be [calc(0% + 1px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [100%\] to [1px\] at (1.5) should be [calc(-50% + 1.5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions: property <row-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Transitions with transition: all: property <row-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[CSS Animations: property <row-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (-0.3) should be [calc(-3% + 13px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (0) should be [calc(0% + 10px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (0.3) should be [calc(3% + 7px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (0.6) should be [calc(6% + 4px)\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (1) should be [10%\]]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Web Animations: property <row-rule-outset> from [10px\] to [10%\] at (1.5) should be [calc(15% - 5px)\]]
|
||||||
|
expected: FAIL
|
|
@ -16,3 +16,6 @@
|
||||||
|
|
||||||
[Property item-tolerance value 'calc(0.5em + 10px)']
|
[Property item-tolerance value 'calc(0.5em + 10px)']
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Property item-tolerance value 'infinite']
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -16,3 +16,9 @@
|
||||||
|
|
||||||
[e.style['item-tolerance'\] = "5vmin" should set the property value]
|
[e.style['item-tolerance'\] = "5vmin" should set the property value]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[e.style['item-tolerance'\] = "infinite" should set the property value]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[e.style['item-tolerance'\] = "initial" should set the property value]
|
||||||
|
expected: FAIL
|
||||||
|
|
12
tests/wpt/meta/css/css-overflow/parsing/scroll-markers-computed.tentative.html.ini
vendored
Normal file
12
tests/wpt/meta/css/css-overflow/parsing/scroll-markers-computed.tentative.html.ini
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
[scroll-markers-computed.tentative.html]
|
||||||
|
[Property scroll-marker-group value 'before tabs']
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Property scroll-marker-group value 'before links']
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Property scroll-marker-group value 'after links']
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Property scroll-marker-group value 'after tabs']
|
||||||
|
expected: FAIL
|
2
tests/wpt/meta/css/css-text/white-space/text-wrap-balance-line-clamp-005.html.ini
vendored
Normal file
2
tests/wpt/meta/css/css-text/white-space/text-wrap-balance-line-clamp-005.html.ini
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[text-wrap-balance-line-clamp-005.html]
|
||||||
|
expected: FAIL
|
3
tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/009.html.ini
vendored
Normal file
3
tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/009.html.ini
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[009.html]
|
||||||
|
[Link with onclick form submit to javascript url with document.write and href navigation ]
|
||||||
|
expected: FAIL
|
|
@ -1,3 +0,0 @@
|
||||||
[navigation-unload-same-origin.window.html]
|
|
||||||
[Same-origin navigation started from unload handler must be ignored]
|
|
||||||
expected: FAIL
|
|
|
@ -1,2 +0,0 @@
|
||||||
[canvas.2d.disconnected.html]
|
|
||||||
expected: FAIL
|
|
|
@ -13,7 +13,4 @@
|
||||||
expected: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
[Host element with delegatesFocus should support autofocus]
|
[Host element with delegatesFocus should support autofocus]
|
||||||
expected: NOTRUN
|
expected: FAIL
|
||||||
|
|
||||||
[Non-HTMLElement should not support autofocus]
|
|
||||||
expected: NOTRUN
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
[iframe_sandbox_popups_escaping-2.html]
|
[iframe_sandbox_popups_escaping-2.html]
|
||||||
|
expected: CRASH
|
||||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[iframe_sandbox_popups_nonescaping-3.html]
|
[iframe_sandbox_popups_nonescaping-3.html]
|
||||||
expected: CRASH
|
expected: CRASH
|
||||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||||
expected: FAIL
|
expected: NOTRUN
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
[navigation-id-worker-created-entries.html]
|
[navigation-id-worker-created-entries.html]
|
||||||
[Navigation id of performance entries created by workers should be empty]
|
[Navigation id of performance entries created by workers should be empty]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Navigation id of performance entries created by workers should be 0.]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -56,9 +56,6 @@
|
||||||
[MIME-blocked-nosniff (script): main]
|
[MIME-blocked-nosniff (script): main]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[Decode-error (script): main]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[success (script): main]
|
[success (script): main]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
[document-initiated.html]
|
[document-initiated.html]
|
||||||
expected: TIMEOUT
|
|
||||||
[Ensure initiator Attribute matches with Document ResourceID]
|
[Ensure initiator Attribute matches with Document ResourceID]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[reuse-wasm-loaded-as-classic-script.tentative.html]
|
||||||
|
expected: TIMEOUT
|
||||||
|
[Reuse Wasm loaded as classic script]
|
||||||
|
expected: TIMEOUT
|
2
tests/wpt/meta/wasm/webapi/esm-integration/source-phase-import-non-UTF8.tentative.html.ini
vendored
Normal file
2
tests/wpt/meta/wasm/webapi/esm-integration/source-phase-import-non-UTF8.tentative.html.ini
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
[source-phase-import-non-UTF8.tentative.html]
|
||||||
|
expected: ERROR
|
|
@ -32,3 +32,17 @@
|
||||||
[X threshold: refNode = new DynamicsCompressorNode(context) incorrectly threw ReferenceError: "DynamicsCompressorNode is not defined".]
|
[X threshold: refNode = new DynamicsCompressorNode(context) incorrectly threw ReferenceError: "DynamicsCompressorNode is not defined".]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Verify k-rate 'attack' with input on DynamicsCompressorNode]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Verify k-rate 'knee' with input on DynamicsCompressorNode]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Verify k-rate 'ratio' with input on DynamicsCompressorNode]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Verify k-rate 'release' with input on DynamicsCompressorNode]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Verify k-rate 'threshold' with input on DynamicsCompressorNode]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[localstorage-about-blank-3P-iframe-opens-3P-window.partitioned.html]
|
|
||||||
expected: TIMEOUT
|
|
||||||
[StorageKey: test 3P about:blank window opened from a 3P iframe]
|
|
||||||
expected: TIMEOUT
|
|
57
tests/wpt/tests/css/css-anchor-position/position-area-percents-001-ref.html
vendored
Normal file
57
tests/wpt/tests/css/css-anchor-position/position-area-percents-001-ref.html
vendored
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>Percentage inset/margin/padding in position-area</title>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.container {
|
||||||
|
width: 100px; height: 100px;
|
||||||
|
border: solid gray;
|
||||||
|
margin: 6px;
|
||||||
|
position: relative;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.anchor {
|
||||||
|
position: absolute;
|
||||||
|
background: silver;
|
||||||
|
inset: 20px 20px 40px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.anchored {
|
||||||
|
border: solid blue 2px;
|
||||||
|
position: absolute;
|
||||||
|
place-self: stretch;
|
||||||
|
inset: 60px 0 0 20px; /* occupy the bottom center-right area */
|
||||||
|
background: content-box aqua;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* insets (top / left margins here) compute against their own axis */
|
||||||
|
/* margins (bottom / right margins here) and padding compute against inline axis */
|
||||||
|
.horizontal { /* margin/padding computes against horizontal */
|
||||||
|
margin: 8px 4px 4px 16px;
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
.vertical { /* margin/padding computes against vertical */
|
||||||
|
margin: 8px 2px 2px 16px;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored horizontal"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored horizontal"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored vertical"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored vertical"></div>
|
||||||
|
</div>
|
56
tests/wpt/tests/css/css-anchor-position/position-area-percents-001.html
vendored
Normal file
56
tests/wpt/tests/css/css-anchor-position/position-area-percents-001.html
vendored
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>Percentage inset/margin/padding in position-area</title>
|
||||||
|
|
||||||
|
<link rel="help" href="https://www.w3.org/TR/css-anchor-position/#position-area">
|
||||||
|
<link rel="match" href="position-area-percents-001-ref.html">
|
||||||
|
<link rel="author" name="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.container {
|
||||||
|
width: 100px; height: 100px;
|
||||||
|
border: solid gray;
|
||||||
|
margin: 6px;
|
||||||
|
position: relative;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.anchor {
|
||||||
|
position: absolute;
|
||||||
|
background: silver;
|
||||||
|
inset: 20px 20px 40px 20px;
|
||||||
|
/* Makes bottom center-right area 80px wide by 40px tall */
|
||||||
|
anchor-name: --foo;
|
||||||
|
}
|
||||||
|
|
||||||
|
.anchored {
|
||||||
|
border: solid blue 2px;
|
||||||
|
position: absolute;
|
||||||
|
position-anchor: --foo;
|
||||||
|
position-area: bottom span-right;
|
||||||
|
place-self: stretch;
|
||||||
|
inset: 20% 0 0 20%;
|
||||||
|
margin: 0 5% 5% 0;
|
||||||
|
padding: 10%;
|
||||||
|
background: content-box aqua;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=container>
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored" style="writing-mode: vertical-rl"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=container style="writing-mode: vertical-rl">
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored"></div>
|
||||||
|
</div>
|
||||||
|
<div class=container style="writing-mode: vertical-rl">
|
||||||
|
<div class="anchor"></div>
|
||||||
|
<div class="anchored" style="writing-mode: horizontal-tb"></div>
|
||||||
|
</div>
|
||||||
|
|
122
tests/wpt/tests/css/css-gaps/animation/column-rule-outset-interpolation.html
vendored
Normal file
122
tests/wpt/tests/css/css-gaps/animation/column-rule-outset-interpolation.html
vendored
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>column-rule-outset interpolation</title>
|
||||||
|
<link rel="author" title="Javier Contreras" href="mailto:javiercon@chromium.org">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/#outset">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/css/support/interpolation-testcommon.js"></script>
|
||||||
|
<style>
|
||||||
|
.parent {
|
||||||
|
row-rule-style: solid;
|
||||||
|
column-rule-outset: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.target {
|
||||||
|
display: flex;
|
||||||
|
row-gap: 10px;
|
||||||
|
row-rule: 10px solid black;
|
||||||
|
column-rule: 10px solid black;
|
||||||
|
|
||||||
|
column-rule-break: intersection;
|
||||||
|
column-rule-outset: 5px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<script>
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: neutralKeyframe,
|
||||||
|
to: '15px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '2px' },
|
||||||
|
{ at: 0, expect: '5px' },
|
||||||
|
{ at: 0.3, expect: '8px' },
|
||||||
|
{ at: 0.6, expect: '11px' },
|
||||||
|
{ at: 1, expect: '15px' },
|
||||||
|
{ at: 1.5, expect: '20px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: 'initial', // initial is 50%.
|
||||||
|
to: '40%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '53%' },
|
||||||
|
{ at: 0, expect: '50%' },
|
||||||
|
{ at: 0.3, expect: '47%' },
|
||||||
|
{ at: 0.6, expect: '44%' },
|
||||||
|
{ at: 1, expect: '40%' },
|
||||||
|
{ at: 1.5, expect: '35%' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: 'inherit',
|
||||||
|
to: '10px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '23px' },
|
||||||
|
{ at: 0, expect: '20px' },
|
||||||
|
{ at: 0.3, expect: '17px' },
|
||||||
|
{ at: 0.6, expect: '14px' },
|
||||||
|
{ at: 1, expect: '10px' },
|
||||||
|
{ at: 1.5, expect: '5px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: 'unset',
|
||||||
|
to: '40%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '53%' },
|
||||||
|
{ at: 0, expect: '50%' },
|
||||||
|
{ at: 0.3, expect: '47%' },
|
||||||
|
{ at: 0.6, expect: '44%' },
|
||||||
|
{ at: 1, expect: '40%' },
|
||||||
|
{ at: 1.5, expect: '35%' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: '-5px',
|
||||||
|
to: '5px'
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '-8px' }, // column-rule-outset can be negative
|
||||||
|
{ at: 0, expect: '-5px' },
|
||||||
|
{ at: 0.3, expect: '-2px' },
|
||||||
|
{ at: 0.6, expect: '1px' },
|
||||||
|
{ at: 1, expect: '5px' },
|
||||||
|
{ at: 1.5, expect: '10px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: '100%',
|
||||||
|
to: '1px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: 'calc(130% - 0.3px)' },
|
||||||
|
{ at: 0, expect: '100%' },
|
||||||
|
{ at: 0.3, expect: 'calc(70% + 0.3px)' },
|
||||||
|
{ at: 0.6, expect: 'calc(40% + 0.6px)' },
|
||||||
|
{ at: 1, expect: 'calc(0% + 1px)' },
|
||||||
|
{ at: 1.5, expect: 'calc(-50% + 1.5px)' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'column-rule-outset',
|
||||||
|
from: '10px',
|
||||||
|
to: '10%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: 'calc(-3% + 13px)' },
|
||||||
|
{ at: 0, expect: 'calc(0% + 10px)' },
|
||||||
|
{ at: 0.3, expect: 'calc(3% + 7px)' },
|
||||||
|
{ at: 0.6, expect: 'calc(6% + 4px)' },
|
||||||
|
{ at: 1, expect: '10%' },
|
||||||
|
{ at: 1.5, expect: 'calc(15% - 5px)' },
|
||||||
|
]);
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
25
tests/wpt/tests/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-001.html
vendored
Normal file
25
tests/wpt/tests/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-001.html
vendored
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>gap decorations row-rule-outset neutral keyframe</title>
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/#outset">
|
||||||
|
<meta name="assert" content="gap decorations row-rule-outset value list supports neutral keyframe.">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/css/support/interpolation-testcommon.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="target"></div>
|
||||||
|
<script>
|
||||||
|
test(() => {
|
||||||
|
target.style.rowRuleStyle = 'solid';
|
||||||
|
target.style.rowRuleOutset = '1px';
|
||||||
|
var animation = target.animate([{}, {rowRuleOutset: '11px'}], 1000);
|
||||||
|
animation.pause();
|
||||||
|
animation.currentTime = 500;
|
||||||
|
assert_equals(getComputedStyle(target).rowRuleOutset, '6px');
|
||||||
|
}, 'gap decorations row-rule-outset value list supports neutral keyframe.');
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
25
tests/wpt/tests/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-002.html
vendored
Normal file
25
tests/wpt/tests/css/css-gaps/animation/gap-decorations-outset-neutral-keyframe-002.html
vendored
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>gap decorations column-rule-outset neutral keyframe</title>
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/#outset">
|
||||||
|
<meta name="assert" content="gap decorations column-rule-outset value list supports neutral keyframe.">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/css/support/interpolation-testcommon.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="target"></div>
|
||||||
|
<script>
|
||||||
|
test(() => {
|
||||||
|
target.style.columnRuleStyle = 'solid';
|
||||||
|
target.style.columnRuleOutset = '1px';
|
||||||
|
var animation = target.animate([{}, {columnRuleOutset: '11px'}], 1000);
|
||||||
|
animation.pause();
|
||||||
|
animation.currentTime = 500;
|
||||||
|
assert_equals(getComputedStyle(target).columnRuleOutset, '6px');
|
||||||
|
}, 'gap decorations column-rule-outset value list supports neutral keyframe.');
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
122
tests/wpt/tests/css/css-gaps/animation/row-rule-outset-interpolation.html
vendored
Normal file
122
tests/wpt/tests/css/css-gaps/animation/row-rule-outset-interpolation.html
vendored
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>row-rule-outset interpolation</title>
|
||||||
|
<link rel="author" title="Javier Contreras" href="mailto:javiercon@chromium.org">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/#outset">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/css/support/interpolation-testcommon.js"></script>
|
||||||
|
<style>
|
||||||
|
.parent {
|
||||||
|
row-rule-style: solid;
|
||||||
|
row-rule-outset: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.target {
|
||||||
|
display: flex;
|
||||||
|
row-gap: 10px;
|
||||||
|
row-rule: 10px solid black;
|
||||||
|
column-rule: 10px solid black;
|
||||||
|
|
||||||
|
row-rule-break: intersection;
|
||||||
|
row-rule-outset: 5px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<script>
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: neutralKeyframe,
|
||||||
|
to: '15px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '2px' },
|
||||||
|
{ at: 0, expect: '5px' },
|
||||||
|
{ at: 0.3, expect: '8px' },
|
||||||
|
{ at: 0.6, expect: '11px' },
|
||||||
|
{ at: 1, expect: '15px' },
|
||||||
|
{ at: 1.5, expect: '20px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: 'initial', // initial is 50%.
|
||||||
|
to: '40%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '53%' },
|
||||||
|
{ at: 0, expect: '50%' },
|
||||||
|
{ at: 0.3, expect: '47%' },
|
||||||
|
{ at: 0.6, expect: '44%' },
|
||||||
|
{ at: 1, expect: '40%' },
|
||||||
|
{ at: 1.5, expect: '35%' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: 'inherit',
|
||||||
|
to: '10px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '23px' },
|
||||||
|
{ at: 0, expect: '20px' },
|
||||||
|
{ at: 0.3, expect: '17px' },
|
||||||
|
{ at: 0.6, expect: '14px' },
|
||||||
|
{ at: 1, expect: '10px' },
|
||||||
|
{ at: 1.5, expect: '5px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: 'unset',
|
||||||
|
to: '40%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '53%' },
|
||||||
|
{ at: 0, expect: '50%' },
|
||||||
|
{ at: 0.3, expect: '47%' },
|
||||||
|
{ at: 0.6, expect: '44%' },
|
||||||
|
{ at: 1, expect: '40%' },
|
||||||
|
{ at: 1.5, expect: '35%' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: '-5px',
|
||||||
|
to: '5px'
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: '-8px' }, // row-rule-outset can be negative
|
||||||
|
{ at: 0, expect: '-5px' },
|
||||||
|
{ at: 0.3, expect: '-2px' },
|
||||||
|
{ at: 0.6, expect: '1px' },
|
||||||
|
{ at: 1, expect: '5px' },
|
||||||
|
{ at: 1.5, expect: '10px' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: '100%',
|
||||||
|
to: '1px',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: 'calc(130% - 0.3px)' },
|
||||||
|
{ at: 0, expect: '100%' },
|
||||||
|
{ at: 0.3, expect: 'calc(70% + 0.3px)' },
|
||||||
|
{ at: 0.6, expect: 'calc(40% + 0.6px)' },
|
||||||
|
{ at: 1, expect: 'calc(0% + 1px)' },
|
||||||
|
{ at: 1.5, expect: 'calc(-50% + 1.5px)' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
test_interpolation({
|
||||||
|
property: 'row-rule-outset',
|
||||||
|
from: '10px',
|
||||||
|
to: '10%',
|
||||||
|
}, [
|
||||||
|
{ at: -0.3, expect: 'calc(-3% + 13px)' },
|
||||||
|
{ at: 0, expect: 'calc(0% + 10px)' },
|
||||||
|
{ at: 0.3, expect: 'calc(3% + 7px)' },
|
||||||
|
{ at: 0.6, expect: 'calc(6% + 4px)' },
|
||||||
|
{ at: 1, expect: '10%' },
|
||||||
|
{ at: 1.5, expect: 'calc(15% - 5px)' },
|
||||||
|
]);
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -19,6 +19,7 @@
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
test_computed_value("item-tolerance", "normal");
|
test_computed_value("item-tolerance", "normal");
|
||||||
|
test_computed_value("item-tolerance", "infinite");
|
||||||
|
|
||||||
test_computed_value("item-tolerance", "10px");
|
test_computed_value("item-tolerance", "10px");
|
||||||
test_computed_value("item-tolerance", "20%");
|
test_computed_value("item-tolerance", "20%");
|
||||||
|
|
|
@ -17,8 +17,15 @@ test_invalid_value("item-tolerance", "auto");
|
||||||
|
|
||||||
test_invalid_value("item-tolerance", "10");
|
test_invalid_value("item-tolerance", "10");
|
||||||
test_invalid_value("item-tolerance", "10px 20px");
|
test_invalid_value("item-tolerance", "10px 20px");
|
||||||
|
test_invalid_value("item-tolerance", "1fr");
|
||||||
test_invalid_value("item-tolerance", "-1px");
|
test_invalid_value("item-tolerance", "-1px");
|
||||||
test_invalid_value("item-tolerance", "-10%");
|
test_invalid_value("item-tolerance", "-10%");
|
||||||
|
test_invalid_value("item-tolerance", "normal 10px");
|
||||||
|
test_invalid_value("item-tolerance", "infinite 10px");
|
||||||
|
test_invalid_value("item-tolerance", "10px normal");
|
||||||
|
test_invalid_value("item-tolerance", "10px infinite");
|
||||||
|
test_invalid_value("item-tolerance", "normal infinite");
|
||||||
|
test_invalid_value("item-tolerance", "infinite normal");
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -13,6 +13,8 @@
|
||||||
<body>
|
<body>
|
||||||
<script>
|
<script>
|
||||||
test_valid_value("item-tolerance", "normal");
|
test_valid_value("item-tolerance", "normal");
|
||||||
|
test_valid_value("item-tolerance", "infinite");
|
||||||
|
test_valid_value("item-tolerance", "initial");
|
||||||
|
|
||||||
test_valid_value("item-tolerance", "0", "0px");
|
test_valid_value("item-tolerance", "0", "0px");
|
||||||
test_valid_value("item-tolerance", "1px");
|
test_valid_value("item-tolerance", "1px");
|
||||||
|
|
14
tests/wpt/tests/css/css-overflow/parsing/scroll-markers-computed.tentative.html
vendored
Normal file
14
tests/wpt/tests/css/css-overflow/parsing/scroll-markers-computed.tentative.html
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Overflow: scroll-marker-group with tabs/links mode computed values</title>
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/12122">
|
||||||
|
<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('scroll-marker-group', 'before tabs');
|
||||||
|
test_computed_value('scroll-marker-group', 'before links');
|
||||||
|
test_computed_value('scroll-marker-group', 'after links');
|
||||||
|
test_computed_value('scroll-marker-group', 'after tabs');
|
||||||
|
</script>
|
18
tests/wpt/tests/css/css-overflow/parsing/scroll-markers-invalid.tentative.html
vendored
Normal file
18
tests/wpt/tests/css/css-overflow/parsing/scroll-markers-invalid.tentative.html
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Overflow: parsing scroll-marker-group with modes invalid values</title>
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/12122">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/css/support/parsing-testcommon.js"></script>
|
||||||
|
<div id="target"></div>
|
||||||
|
<script>
|
||||||
|
test_invalid_value('scroll-marker-group', 'before before');
|
||||||
|
test_invalid_value('scroll-marker-group', 'after before');
|
||||||
|
test_invalid_value('scroll-marker-group', 'after tab');
|
||||||
|
test_invalid_value('scroll-marker-group', 'after link');
|
||||||
|
test_invalid_value('scroll-marker-group', 'links after');
|
||||||
|
test_invalid_value('scroll-marker-group', 'tabs before');
|
||||||
|
test_invalid_value('scroll-marker-group', 'after, tabs');
|
||||||
|
test_invalid_value('scroll-marker-group', 'after, links');
|
||||||
|
</script>
|
26
tests/wpt/tests/css/css-text/white-space/reference/text-wrap-balance-line-clamp-005-ref.html
vendored
Normal file
26
tests/wpt/tests/css/css-text/white-space/reference/text-wrap-balance-line-clamp-005-ref.html
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" >
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Test reference</title>
|
||||||
|
<link rel='author' title='Andreu Botella' href='mailto:abotella@igalia.com'>
|
||||||
|
<style>
|
||||||
|
div {
|
||||||
|
border: solid;
|
||||||
|
font-family: monospace;
|
||||||
|
margin: 1ch;
|
||||||
|
width: 11.1ch;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.test {
|
||||||
|
border-color: blue;
|
||||||
|
}
|
||||||
|
.ref {
|
||||||
|
border-color: orange;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if the box with a blue frame is identical to the orange one.
|
||||||
|
|
||||||
|
<div class=test>abc def<br>AB CD EF GH<br>IJ KL MN O…</div>
|
||||||
|
|
||||||
|
<div class=ref>abc def<br>AB CD EF GH<br>IJ KL MN O…</div>
|
72
tests/wpt/tests/css/css-text/white-space/text-wrap-balance-line-clamp-005.html
vendored
Normal file
72
tests/wpt/tests/css/css-text/white-space/text-wrap-balance-line-clamp-005.html
vendored
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" >
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS test: balancing and line-clamp</title>
|
||||||
|
<link rel='author' title='Andreu Botella' href='mailto:abotella@igalia.com'>
|
||||||
|
<link rel='help' href='https://drafts.csswg.org/css-overflow-4/#line-clamp'>
|
||||||
|
<link rel='help' href='https://drafts.csswg.org/css-text-4/#text-wrap-style'>
|
||||||
|
<meta name="assert" content="If the element is affected by line-clamp, the clamping effect is applied first, then the remaining lines are balanced. This also happens if the balanced paragraph is within the line-clamp container, not the line-clamp container itself.">
|
||||||
|
<link rel="match" href="reference/text-wrap-balance-line-clamp-005-ref.html">
|
||||||
|
<style>
|
||||||
|
body > div {
|
||||||
|
border: solid;
|
||||||
|
font-family: monospace;
|
||||||
|
margin: 1ch;
|
||||||
|
width: 11.1ch; /* .1ch to work around browser bugs */
|
||||||
|
}
|
||||||
|
.test {
|
||||||
|
border-color: blue;
|
||||||
|
|
||||||
|
line-clamp: 3;
|
||||||
|
/* This code is unnecessary in any browser that supports the unprefixed version of line-clamp,
|
||||||
|
but neither does it have any detrimental effect,
|
||||||
|
and it broadens the test to browsers that only support the prefixed version */
|
||||||
|
|
||||||
|
-webkit-line-clamp: 3;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.balanced {
|
||||||
|
text-wrap-style: balance;
|
||||||
|
}
|
||||||
|
.ref {
|
||||||
|
border-color: orange;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if the box with a blue frame is identical to the orange one.
|
||||||
|
|
||||||
|
<div class=test>
|
||||||
|
abc def
|
||||||
|
<div class="balanced">
|
||||||
|
AB CD EF GH
|
||||||
|
IJ KL MN O
|
||||||
|
PQ RST
|
||||||
|
</div>
|
||||||
|
uvwxyz
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class=ref>abc def<br>AB CD EF GH<br>IJ KL MN O…</div>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
unbalanced layout without clamping:
|
||||||
|
|-----------|
|
||||||
|
|abc def |
|
||||||
|
|AB CD EF GH|
|
||||||
|
|IJ KL MN O |
|
||||||
|
|PQ RST |
|
||||||
|
|uvwxyz |
|
||||||
|
|-----------|
|
||||||
|
|
||||||
|
unbalanced layout after clamping:
|
||||||
|
|-----------|
|
||||||
|
|abc def |
|
||||||
|
|AB CD EF GH|
|
||||||
|
|IJ KL MN O…|
|
||||||
|
|-----------|
|
||||||
|
|
||||||
|
There is no way to balance the uppercase lines without changing the number of
|
||||||
|
lines.
|
||||||
|
-->
|
17
tests/wpt/tests/css/filter-effects/crashtests/filter-primitive-crash.html
vendored
Normal file
17
tests/wpt/tests/css/filter-effects/crashtests/filter-primitive-crash.html
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
<!doctype html>
|
||||||
|
<title>
|
||||||
|
Having lots of filter primitives shouldn't crash.
|
||||||
|
</title>
|
||||||
|
<div style="filter:url(#test1)">test</div>
|
||||||
|
<svg
|
||||||
|
width="768"
|
||||||
|
height="768"
|
||||||
|
viewBox="0 0 768 768"
|
||||||
|
xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<filter id="test1">
|
||||||
|
<feMorphology operator="dilate" radius="1" />
|
||||||
|
</filter>
|
||||||
|
</svg>
|
||||||
|
<script>
|
||||||
|
test1.innerHTML = test1.innerHTML.repeat(10000);
|
||||||
|
</script>
|
|
@ -0,0 +1,25 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset=utf-8>
|
||||||
|
<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md#locking-the-pepc-style">
|
||||||
|
<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>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
permission {
|
||||||
|
color: #ff0000;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<permission id="permission_element" type="camera"></permission>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
promise_test(async() => {
|
||||||
|
let permission_element = document.getElementById("permission_element");
|
||||||
|
assert_equals(getComputedStyle(permission_element, "::permission-icon").fill, 'rgb(255, 0, 0)')
|
||||||
|
}, "Permission element icon's color should be same as the text color unless explicitly changed.")
|
||||||
|
</script>
|
||||||
|
</body>
|
|
@ -0,0 +1,11 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>A standard permission element of type location, with blue text and icon color</title>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
permission {
|
||||||
|
color: blue;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<permission id="geolocation" type="geolocation"></permission>
|
|
@ -2,8 +2,11 @@
|
||||||
<title>The icon of the element should change if the fill color is changed</title>
|
<title>The icon of the element should change if the fill color is changed</title>
|
||||||
<!-- TODO: Update the link to the permission icon spec -->
|
<!-- TODO: Update the link to the permission icon spec -->
|
||||||
<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md">
|
<link rel="help" href="https://github.com/WICG/PEPC/blob/main/explainer.md">
|
||||||
<link rel="mismatch" href="standard-location-permission-element-ref.html">
|
<link rel="mismatch" href="icon-css-property-fill-reftest-ref.html">
|
||||||
<style>
|
<style>
|
||||||
|
permission {
|
||||||
|
color: blue;
|
||||||
|
}
|
||||||
::permission-icon {
|
::permission-icon {
|
||||||
fill: red;
|
fill: red;
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,9 +75,7 @@ method = urlParams.get('method');
|
||||||
reinsert(target);
|
reinsert(target);
|
||||||
});
|
});
|
||||||
assert_false(el.matches(':has-interest'),'setup');
|
assert_false(el.matches(':has-interest'),'setup');
|
||||||
assert_false(el.matches(':has-partial-interest'),'setup');
|
|
||||||
assert_false(target.matches(':target-of-interest'),'setup');
|
assert_false(target.matches(':target-of-interest'),'setup');
|
||||||
assert_false(target.matches(':target-of-partial-interest'),'setup');
|
|
||||||
const signal = t.get_signal();
|
const signal = t.get_signal();
|
||||||
let interestCount = 0;
|
let interestCount = 0;
|
||||||
let loseInterestCount = 0;
|
let loseInterestCount = 0;
|
||||||
|
|
|
@ -1,52 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<link rel="author" href="mailto:masonf@chromium.org">
|
|
||||||
<link rel="help" href="https://open-ui.org/components/interest-invokers.explainer/" />
|
|
||||||
<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="resources/invoker-utils.js"></script>
|
|
||||||
|
|
||||||
<button id=invoker interestfor=target>Button</button>
|
|
||||||
<div id=target popover>Popover with <button id=contained>button</button></div>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
[interestfor] {
|
|
||||||
interest-delay: 0s;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
let expectInterest;
|
|
||||||
let expectPartial;
|
|
||||||
let eventCount = 0;
|
|
||||||
function checkInterest(e) {
|
|
||||||
const notStr = expectInterest ? "" : "not ";
|
|
||||||
const event = e instanceof Event ? `${e.type} event` : e;
|
|
||||||
assert_equals(invoker.matches(':has-interest'),expectInterest,`target should ${notStr}gain interest (${event})`);
|
|
||||||
assert_equals(invoker.matches(':has-partial-interest'),expectInterest&&expectPartial,`Interest should ${expectPartial ? "" : "not "}be partial (${event})`);
|
|
||||||
assert_equals(target.matches(':popover-open'),expectInterest,`popover should ${notStr}be open (${event})`);
|
|
||||||
++eventCount;
|
|
||||||
}
|
|
||||||
|
|
||||||
promise_test(async function (t) {
|
|
||||||
invoker.addEventListener('focus',checkInterest);
|
|
||||||
target.addEventListener('interest',(e) => {
|
|
||||||
checkInterest(e);
|
|
||||||
expectInterest = true;
|
|
||||||
expectPartial = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
expectInterest = false;
|
|
||||||
expectPartial = false;
|
|
||||||
await focusOn(invoker);
|
|
||||||
assert_equals(eventCount,2,'focus and interest should both have fired');
|
|
||||||
assert_true(expectInterest,'the interest event should set this');
|
|
||||||
checkInterest('before hot key');
|
|
||||||
await sendShowInterestHotkey();
|
|
||||||
expectPartial = false;
|
|
||||||
checkInterest('after hot key');
|
|
||||||
},'Partial interest timing should not be observable');
|
|
||||||
</script>
|
|
|
@ -1,46 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<link rel="author" href="mailto:masonf@chromium.org">
|
|
||||||
<link rel="help" href="https://open-ui.org/components/interest-invokers.explainer/" />
|
|
||||||
<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="resources/invoker-utils.js"></script>
|
|
||||||
<script src="/html/semantics/popovers/resources/popover-utils.js"></script>
|
|
||||||
|
|
||||||
<button id=el interestfor=target>Button</button>
|
|
||||||
<div id=target popover>Popover with <button id=contained>button</button></div>
|
|
||||||
<button id=otherbutton>Other button</button>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
[interestfor] {
|
|
||||||
interest-delay: 0s;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
promise_test(async function (t) {
|
|
||||||
let interestCount = 0;
|
|
||||||
let loseInterestCount = 0;
|
|
||||||
target.addEventListener('interest',(e) => ++interestCount);
|
|
||||||
target.addEventListener('loseinterest',(e) => ++loseInterestCount);
|
|
||||||
assert_false(target.matches(':popover-open'));
|
|
||||||
await focusOn(el);
|
|
||||||
assert_equals(document.activeElement,el);
|
|
||||||
assert_true(target.matches(':popover-open'),'Focusing should trigger interest');
|
|
||||||
assert_equals(interestCount,1);
|
|
||||||
assert_equals(loseInterestCount,0);
|
|
||||||
await sendShowInterestHotkey();
|
|
||||||
assert_equals(document.activeElement,contained);
|
|
||||||
assert_true(target.matches(':popover-open'),'Moving focus into popover should not lose interest');
|
|
||||||
assert_equals(interestCount,1);
|
|
||||||
assert_equals(loseInterestCount,0);
|
|
||||||
await sendTab();
|
|
||||||
assert_equals(document.activeElement,otherbutton);
|
|
||||||
assert_false(target.matches(':popover-open'),'Moving focus out of popover and invoker should lose interest');
|
|
||||||
assert_equals(interestCount,1);
|
|
||||||
assert_equals(loseInterestCount,1);
|
|
||||||
},'It should be possible to move focus into target popover');
|
|
||||||
</script>
|
|
|
@ -37,18 +37,12 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
function checkPseudos(invoker,target,expectHasPartialInterest,expectHasInterest,expectTargetHasPartialInterest,expectTargetHasInterest,msg) {
|
function checkPseudos(invoker,target,expectHasInterest,expectTargetHasInterest,msg) {
|
||||||
msg = msg ?? 'Error';
|
msg = msg ?? 'Error';
|
||||||
assert_true(!expectHasPartialInterest || expectHasInterest,'Partial interest can\'t be true without full interest');
|
|
||||||
assert_true(!expectTargetHasPartialInterest || expectTargetHasInterest,'Partial interest can\'t be true without full interest (target)');
|
|
||||||
assert_equals(invoker.matches(':has-interest'),expectHasInterest,`${msg}: :has-interest mismatch`);
|
assert_equals(invoker.matches(':has-interest'),expectHasInterest,`${msg}: :has-interest mismatch`);
|
||||||
assert_equals(invoker.matches(':has-partial-interest'),expectHasPartialInterest,`${msg}: :has-partial-interest mismatch`);
|
assert_equals(target.matches(':target-of-interest'),expectTargetHasInterest,`${msg}: :target-of-interest mismatch`);
|
||||||
assert_equals(target.matches(':target-of-interest'),expectTargetHasInterest,`${msg}: :target-of-partial-interest mismatch`);
|
|
||||||
assert_equals(target.matches(':target-of-partial-interest'),expectTargetHasPartialInterest,`${msg}: :target-of-partial-interest mismatch`);
|
|
||||||
assert_false(invoker.matches(':target-of-interest'),'invoker should never match :target-of-interest');
|
assert_false(invoker.matches(':target-of-interest'),'invoker should never match :target-of-interest');
|
||||||
assert_false(invoker.matches(':target-of-partial-interest'),'invoker should never match :target-of-partial-interest');
|
|
||||||
assert_false(target.matches(':has-interest'),'target should never match :has-interest');
|
assert_false(target.matches(':has-interest'),'target should never match :has-interest');
|
||||||
assert_false(target.matches(':has-partial-interest'),'target should never match :has-partial-interest');
|
|
||||||
assert_equals(target.matches(':popover-open'),expectTargetHasInterest,'Popover should be open if target has interest');
|
assert_equals(target.matches(':popover-open'),expectTargetHasInterest,'Popover should be open if target has interest');
|
||||||
}
|
}
|
||||||
// Note that add_cleanup does not wait for async functions.
|
// Note that add_cleanup does not wait for async functions.
|
||||||
|
@ -65,16 +59,16 @@ promise_test(async (t) => {
|
||||||
let hasInterest = false;
|
let hasInterest = false;
|
||||||
target.addEventListener('interest',() => (hasInterest=true));
|
target.addEventListener('interest',() => (hasInterest=true));
|
||||||
target.addEventListener('loseinterest',() => (hasInterest=false));
|
target.addEventListener('loseinterest',() => (hasInterest=false));
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
assert_false(hasInterest);
|
assert_false(hasInterest);
|
||||||
await hoverOver(invoker);
|
await hoverOver(invoker);
|
||||||
checkPseudos(invoker,target,false,true,false,true,'hovering invoker shows full interest (and not partial interest)');
|
checkPseudos(invoker,target,true,true,'hovering invoker shows full interest');
|
||||||
assert_true(hasInterest,'event was fired');
|
assert_true(hasInterest,'event was fired');
|
||||||
await hoverOver(target);
|
await hoverOver(target);
|
||||||
checkPseudos(invoker,target,false,true,false,true,'hovering the target maintains interest');
|
checkPseudos(invoker,target,true,true,'hovering the target maintains interest');
|
||||||
assert_true(hasInterest,'loseinterest event was not yet fired');
|
assert_true(hasInterest,'loseinterest event was not yet fired');
|
||||||
await hoverOver(unrelated);
|
await hoverOver(unrelated);
|
||||||
checkPseudos(invoker,target,false,false,false,false,'hovering unrelated loses interest');
|
checkPseudos(invoker,target,false,false,'hovering unrelated loses interest');
|
||||||
assert_false(hasInterest,'loseinterest event was fired');
|
assert_false(hasInterest,'loseinterest event was fired');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'Basic pseudo class function, with mouse hover triggering');
|
},'Basic pseudo class function, with mouse hover triggering');
|
||||||
|
@ -83,115 +77,65 @@ promise_test(async (t) => {
|
||||||
let hasInterest = false;
|
let hasInterest = false;
|
||||||
target.addEventListener('interest',() => (hasInterest=true));
|
target.addEventListener('interest',() => (hasInterest=true));
|
||||||
target.addEventListener('loseinterest',() => (hasInterest=false));
|
target.addEventListener('loseinterest',() => (hasInterest=false));
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
assert_false(hasInterest);
|
assert_false(hasInterest);
|
||||||
await focusOn(invoker);
|
await focusOn(invoker);
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest (and therefore also interest)');
|
checkPseudos(invoker,target,true,true,'focusing invoker shows interest');
|
||||||
assert_true(hasInterest,'event was fired');
|
assert_true(hasInterest,'event was fired');
|
||||||
// Partial interest does not affect programmatic focusability:
|
|
||||||
await focusOn(target_button);
|
|
||||||
checkPseudos(invoker,target,false,true,false,true,'focusing the target upgrades to full interest (no longer partial interest)');
|
|
||||||
assert_true(hasInterest,'loseinterest event was not yet fired');
|
|
||||||
await focusOn(invoker);
|
await focusOn(invoker);
|
||||||
checkPseudos(invoker,target,false,true,false,true,'focusing back on invoker keeps full interest');
|
checkPseudos(invoker,target,true,true,'focusing back on invoker keeps full interest');
|
||||||
assert_true(hasInterest,'loseinterest event was not yet fired');
|
assert_true(hasInterest,'loseinterest event was not yet fired');
|
||||||
await focusOn(unrelated);
|
await focusOn(unrelated);
|
||||||
checkPseudos(invoker,target,false,false,false,false,'focusing unrelated loses interest');
|
checkPseudos(invoker,target,false,false,'focusing unrelated loses interest');
|
||||||
assert_false(hasInterest,'loseinterest event was fired');
|
assert_false(hasInterest,'loseinterest event was fired');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'Basic pseudo class function, with keyboard focus triggering');
|
},'Basic pseudo class function, with keyboard focus triggering');
|
||||||
|
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
await focusOn(invoker);
|
await focusOn(invoker);
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
checkPseudos(invoker,target,true,true,'invoker now has full interest');
|
||||||
assert_equals(document.activeElement,invoker);
|
|
||||||
// Tab once, which should skip over the button in the popover, to the button
|
|
||||||
// that comes after it.
|
|
||||||
await sendTab();
|
await sendTab();
|
||||||
assert_equals(document.activeElement,after,'focus should be on the button after the popover');
|
assert_equals(document.activeElement,target_button,'focus should now be able to move within the target');
|
||||||
checkPseudos(invoker,target,false,false,false,false,'interest was lost, due to blur of the invoker');
|
|
||||||
await do_cleanup();
|
|
||||||
},'Keyboard-triggered partial focus keeps contents from being keyboard focusable');
|
|
||||||
|
|
||||||
promise_test(async (t) => {
|
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
|
||||||
await focusOn(invoker);
|
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
|
||||||
await sendShowInterestHotkey();
|
|
||||||
checkPseudos(invoker,target,false,true,false,true,'invoker now has full interest');
|
|
||||||
assert_equals(document.activeElement,target_button,'focus moves to the target automatically');
|
|
||||||
await do_cleanup();
|
|
||||||
},'Show interest hotkey confers "full interest", without any delays');
|
|
||||||
|
|
||||||
promise_test(async (t) => {
|
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
|
||||||
await focusOn(invoker);
|
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
|
||||||
await hoverOver(target);
|
|
||||||
checkPseudos(invoker,target,false,true,false,true,'invoker now has full interest');
|
|
||||||
assert_equals(document.activeElement,invoker,'focus does not move in this case');
|
|
||||||
await do_cleanup();
|
|
||||||
},'Hovering the popover confers "full interest", without any delays');
|
|
||||||
|
|
||||||
promise_test(async (t) => {
|
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
|
||||||
await focusOn(invoker);
|
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
|
||||||
await hoverOver(invoker);
|
|
||||||
checkPseudos(invoker,target,false,true,false,true,'invoker now has full interest');
|
|
||||||
assert_equals(document.activeElement,invoker,'focus does not move in this case');
|
|
||||||
await do_cleanup();
|
|
||||||
},'Hovering the invoker confers "full interest", without any delays');
|
|
||||||
|
|
||||||
promise_test(async (t) => {
|
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
|
||||||
await focusOn(invoker);
|
|
||||||
await sendShowInterestHotkey();
|
|
||||||
checkPseudos(invoker,target,false,true,false,true,'invoker now has full interest');
|
|
||||||
await sendTab();
|
await sendTab();
|
||||||
assert_equals(document.activeElement,target_button_2,'focus should now be able to move within the target');
|
assert_equals(document.activeElement,target_button_2,'focus should be able to move within the target');
|
||||||
await sendShiftTab();
|
await sendShiftTab();
|
||||||
assert_equals(document.activeElement,target_button,'focus should now be able to move within the target (backwards)');
|
|
||||||
await sendShiftTab();
|
await sendShiftTab();
|
||||||
assert_equals(document.activeElement,invoker,'focus should go back to invoker');
|
assert_equals(document.activeElement,invoker,'focus should go back to invoker');
|
||||||
checkPseudos(invoker,target,false,true,false,true,'focusing back on invoker keeps full interest');
|
checkPseudos(invoker,target,true,true,'focusing back on invoker keeps full interest');
|
||||||
await focusOn(unrelated);
|
await focusOn(unrelated);
|
||||||
checkPseudos(invoker,target,false,false,false,false,'focusing unrelated loses interest');
|
checkPseudos(invoker,target,false,false,'focusing unrelated loses interest');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'With full interest, contents are keyboard focusable');
|
},'Contents of target popover are keyboard focusable');
|
||||||
|
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
await focusOn(invoker);
|
await focusOn(invoker);
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
checkPseudos(invoker,target,true,true,'focusing invoker shows interest');
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
invoker.setAttribute('style',`interest-delay: 10000s`);
|
||||||
await sendLoseInterestHotkey();
|
await sendLoseInterestHotkey();
|
||||||
checkPseudos(invoker,target,false,false,false,false,'Hot key loses interest immediately (no delays)');
|
checkPseudos(invoker,target,false,false,'Hot key loses interest immediately (no delays)');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},`Lose interest hotkey works`);
|
},`Lose interest hotkey works`);
|
||||||
|
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
await focusOn(invoker);
|
await focusOn(invoker);
|
||||||
checkPseudos(invoker,target,true,true,true,true,'focusing invoker shows partial interest');
|
checkPseudos(invoker,target,true,true,'focusing invoker shows interest');
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
invoker.setAttribute('style',`interest-delay: 10000s`);
|
||||||
target.hidePopover();
|
target.hidePopover();
|
||||||
checkPseudos(invoker,target,false,false,false,false,'closing the popover loses interest');
|
checkPseudos(invoker,target,false,false,'closing the popover loses interest');
|
||||||
assert_equals(document.activeElement,invoker,'focus does not move');
|
assert_equals(document.activeElement,invoker,'focus does not move');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'Closing the target popover loses interest, without any delays (keyboard activation)');
|
},'Closing the target popover loses interest, without any delays (keyboard activation)');
|
||||||
|
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
await hoverOver(invoker);
|
await hoverOver(invoker);
|
||||||
checkPseudos(invoker,target,false,true,false,true,'hovering invoker shows full interest (and not partial interest)');
|
checkPseudos(invoker,target,true,true,'hovering invoker shows full interest');
|
||||||
invoker.setAttribute('style',`interest-delay: 10000s`);
|
invoker.setAttribute('style',`interest-delay: 10000s`);
|
||||||
target.hidePopover();
|
target.hidePopover();
|
||||||
checkPseudos(invoker,target,false,false,false,false,'closing the popover loses interest');
|
checkPseudos(invoker,target,false,false,'closing the popover loses interest');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'Closing the target popover loses interest, without any delays (mouse activation)');
|
},'Closing the target popover loses interest, without any delays (mouse activation)');
|
||||||
|
|
||||||
|
@ -199,27 +143,23 @@ const invokerDelayMs = 100; // The CSS delay setting.
|
||||||
const hoverWaitTime = 200; // How long to wait to cover the delay for sure.
|
const hoverWaitTime = 200; // How long to wait to cover the delay for sure.
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
invoker.setAttribute('style',`interest-delay: ${invokerDelayMs}ms`);
|
invoker.setAttribute('style',`interest-delay: ${invokerDelayMs}ms`);
|
||||||
checkPseudos(invoker,target,false,false,false,false,'initial');
|
checkPseudos(invoker,target,false,false,'initial');
|
||||||
const token1 = await mouseOverAndRecord(t,invoker);
|
const token1 = await mouseOverAndRecord(t,invoker);
|
||||||
const immediate_result = invoker.matches(':has-interest') ||
|
const immediate_result = invoker.matches(':has-interest') ||
|
||||||
invoker.matches(':has-partial-interest') ||
|
target.matches(':target-of-interest');
|
||||||
target.matches(':target-of-interest') ||
|
|
||||||
target.matches(':target-of-partial-interest');
|
|
||||||
if (msSinceMouseOver(token1) < invokerDelayMs) {
|
if (msSinceMouseOver(token1) < invokerDelayMs) {
|
||||||
assert_false(immediate_result,'No pseudos should match before the show delay elapses');
|
assert_false(immediate_result,'No pseudos should match before the show delay elapses');
|
||||||
}
|
}
|
||||||
await waitForHoverTime(hoverWaitTime);
|
await waitForHoverTime(hoverWaitTime);
|
||||||
checkPseudos(invoker,target,false,true,false,true,'full interest pseudos (but not partial interest) should match after hover delay');
|
checkPseudos(invoker,target,true,true,'pseudos should match after hover delay');
|
||||||
const token2 = await mouseOverAndRecord(t,unrelated);
|
const token2 = await mouseOverAndRecord(t,unrelated);
|
||||||
const immediate_result2 = invoker.matches(':has-interest') &&
|
const immediate_result2 = invoker.matches(':has-interest') &&
|
||||||
!invoker.matches(':has-partial-interest') &&
|
target.matches(':target-of-interest');
|
||||||
target.matches(':target-of-interest') &&
|
|
||||||
!target.matches(':target-of-partial-interest');
|
|
||||||
if (msSinceMouseOver(token2) < invokerDelayMs) {
|
if (msSinceMouseOver(token2) < invokerDelayMs) {
|
||||||
assert_true(immediate_result2,'all pseudos should still represent full interest before the hide delay elapses');
|
assert_true(immediate_result2,'all pseudos should still match before the hide delay elapses');
|
||||||
}
|
}
|
||||||
await waitForHoverTime(hoverWaitTime);
|
await waitForHoverTime(hoverWaitTime);
|
||||||
checkPseudos(invoker,target,false,false,false,false,'no pseudos should match after de-hover delay');
|
checkPseudos(invoker,target,false,false,'no pseudos should match after de-hover delay');
|
||||||
await do_cleanup();
|
await do_cleanup();
|
||||||
},'The pseudo classes only match after delays, once interest is shown');
|
},'The pseudo classes only match after delays, once interest is shown');
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -135,14 +135,3 @@ async function sendLoseInterestHotkey() {
|
||||||
.send();
|
.send();
|
||||||
await waitForRender();
|
await waitForRender();
|
||||||
}
|
}
|
||||||
async function sendShowInterestHotkey() {
|
|
||||||
const kAlt = "\uE00A";
|
|
||||||
const kArrowUp = '\uE013';
|
|
||||||
await new test_driver.Actions()
|
|
||||||
.keyDown(kAlt)
|
|
||||||
.keyDown(kArrowUp)
|
|
||||||
.keyUp(kArrowUp)
|
|
||||||
.keyUp(kAlt)
|
|
||||||
.send();
|
|
||||||
await waitForRender();
|
|
||||||
}
|
|
||||||
|
|
|
@ -18,9 +18,8 @@
|
||||||
worker.postMessage('');
|
worker.postMessage('');
|
||||||
});
|
});
|
||||||
|
|
||||||
assert_equals(navigationId.length, 0,
|
assert_equals(navigationId, 0, '0 indicates the absence of a navigation id.');
|
||||||
'Navigation id of performance entries created by a worker should be empty.');
|
}, 'Navigation id of performance entries created by workers should be 0.');
|
||||||
}, 'Navigation id of performance entries created by workers should be empty');
|
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|
10
tests/wpt/tests/svg/crashtests/firefox-bug-1966754.html
vendored
Normal file
10
tests/wpt/tests/svg/crashtests/firefox-bug-1966754.html
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<!doctype html>
|
||||||
|
<body>
|
||||||
|
<svg>
|
||||||
|
<filter id="crash" x="0" y="0" width="400px" height="400px">
|
||||||
|
<feColorMatrix in="SourceGraphic" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0"></feColorMatrix>
|
||||||
|
<feGaussianBlur stdDeviation="4"></feGaussianBlur>
|
||||||
|
</filter>
|
||||||
|
<rect width="100" height="100" filter="url(#crash)"/>
|
||||||
|
</svg>
|
||||||
|
</body>
|
BIN
tests/wpt/tests/wasm/webapi/esm-integration/resources/non-UTF8.wasm
vendored
Normal file
BIN
tests/wpt/tests/wasm/webapi/esm-integration/resources/non-UTF8.wasm
vendored
Normal file
Binary file not shown.
32
tests/wpt/tests/wasm/webapi/esm-integration/reuse-wasm-loaded-as-classic-script.tentative.html
vendored
Normal file
32
tests/wpt/tests/wasm/webapi/esm-integration/reuse-wasm-loaded-as-classic-script.tentative.html
vendored
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
<!doctype html>
|
||||||
|
<title>Reuse Wasm loaded as classic script</title>
|
||||||
|
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
'use strict';
|
||||||
|
setup({allow_uncaught_exception: true});
|
||||||
|
promise_test(t => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
window.addEventListener('test_finished', resolve);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- This should throw, but browsers should be able to handle the subsequent
|
||||||
|
module import properly.
|
||||||
|
|
||||||
|
This test is for Chromium https://crbug.com/425682456 while other browsers
|
||||||
|
should also pass the test. The crossorigin attribute is added to make
|
||||||
|
Chromium's Blink MemoryCache to use the same underlying Resource for the
|
||||||
|
classic script here and as the Wasm module below. -->
|
||||||
|
<script crossorigin src="./resources/exported-names.wasm"></script>
|
||||||
|
|
||||||
|
<script type=module>
|
||||||
|
import source exportedNamesSource from "./resources/exported-names.wasm";
|
||||||
|
assert_true(exportedNamesSource instanceof WebAssembly.Module);
|
||||||
|
assert_array_equals(WebAssembly.Module.exports(exportedNamesSource).map(({ name }) => name).sort(),
|
||||||
|
["func", "glob", "mem", "tab"]);
|
||||||
|
window.dispatchEvent(new Event('test_finished'));
|
||||||
|
</script>
|
18
tests/wpt/tests/wasm/webapi/esm-integration/source-phase-import-non-UTF8.tentative.html
vendored
Normal file
18
tests/wpt/tests/wasm/webapi/esm-integration/source-phase-import-non-UTF8.tentative.html
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<!doctype html>
|
||||||
|
<title>Import a Wasm module that cannot be encoded in UTF-8</title>
|
||||||
|
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script type=module>
|
||||||
|
setup({ single_test: true });
|
||||||
|
|
||||||
|
// Tests that the browser can properly handle Wasm binaries that cannot be
|
||||||
|
// encoded as UTF-8 strings.
|
||||||
|
import source nonUtf8 from "./resources/non-UTF8.wasm";
|
||||||
|
|
||||||
|
assert_true(nonUtf8 instanceof WebAssembly.Module);
|
||||||
|
|
||||||
|
assert_array_equals(WebAssembly.Module.exports(nonUtf8).map(({ name }) => name), ["f"]);
|
||||||
|
|
||||||
|
done();
|
||||||
|
</script>
|
|
@ -1,33 +1,23 @@
|
||||||
<!doctype html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>k-rate AudioParams with inputs for DynamicsCompressorNode</title>
|
<title>k-rate AudioParams with inputs for DynamicsCompressorNode</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
<script src="/webaudio/resources/audit.js"></script>
|
|
||||||
<script src="/webaudio/resources/audit-util.js"></script>
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<script>
|
<script>
|
||||||
let audit = Audit.createTaskRunner();
|
// Fairly arbitrary sampleRate and somewhat duration
|
||||||
|
|
||||||
// Fairly abitrary sampleRate and somewhat duration
|
|
||||||
const sampleRate = 48000;
|
const sampleRate = 48000;
|
||||||
const testDuration = 0.25;
|
const testDuration = 0.25;
|
||||||
|
|
||||||
['attack', 'knee', 'ratio', 'release', 'threshold'].forEach(param => {
|
['attack', 'knee', 'ratio', 'release', 'threshold'].forEach(paramName => {
|
||||||
audit.define(
|
promise_test(async () => {
|
||||||
{label: param, description: `Dynamics compressor ${param}`},
|
await doTest({prefix: paramName, paramName: paramName});
|
||||||
async (task, should) => {
|
}, `Verify k-rate '${paramName}' with input on DynamicsCompressorNode`);
|
||||||
await doTest(should, {prefix: task.label, paramName: param});
|
|
||||||
task.done();
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
audit.run();
|
async function doTest(options) {
|
||||||
|
|
||||||
async function doTest(should, options) {
|
|
||||||
// Test k-rate automation of DynamicsCompressorNode with connected
|
// Test k-rate automation of DynamicsCompressorNode with connected
|
||||||
// input.
|
// input.
|
||||||
//
|
//
|
||||||
|
@ -47,98 +37,67 @@
|
||||||
// prefix - prefix to use for the messages.
|
// prefix - prefix to use for the messages.
|
||||||
// paramName - Name of the AudioParam to be tested
|
// paramName - Name of the AudioParam to be tested
|
||||||
|
|
||||||
let {prefix, paramName} = options;
|
const {prefix, paramName} = options;
|
||||||
|
|
||||||
let context = new OfflineAudioContext({
|
const context = new OfflineAudioContext({
|
||||||
numberOfChannels: 2,
|
numberOfChannels: 2,
|
||||||
sampleRate: sampleRate,
|
sampleRate: sampleRate,
|
||||||
length: testDuration * sampleRate
|
length: testDuration * sampleRate
|
||||||
});
|
});
|
||||||
|
|
||||||
let merger = new ChannelMergerNode(
|
const merger = new ChannelMergerNode(
|
||||||
context, {numberOfInputs: context.destination.channelCount});
|
context, {numberOfInputs: context.destination.channelCount});
|
||||||
merger.connect(context.destination);
|
merger.connect(context.destination);
|
||||||
|
|
||||||
// Use an oscillator for the source. Pretty arbitrary parameters.
|
// Use an oscillator for the source. Pretty arbitrary parameters.
|
||||||
let src =
|
const src = new OscillatorNode(context, {
|
||||||
new OscillatorNode(context, {type: 'sawtooth', frequency: 440});
|
type: 'sawtooth',
|
||||||
|
frequency: 440
|
||||||
|
});
|
||||||
|
|
||||||
// Create the reference and test nodes.
|
// Create the reference and test nodes.
|
||||||
let refNode;
|
let refNode = new DynamicsCompressorNode(context);
|
||||||
let tstNode;
|
|
||||||
|
|
||||||
should(
|
const tstOptions = {};
|
||||||
() => refNode = new DynamicsCompressorNode(context),
|
|
||||||
`${prefix}: refNode = new DynamicsCompressorNode(context)`)
|
|
||||||
.notThrow();
|
|
||||||
|
|
||||||
let tstOptions = {};
|
|
||||||
tstOptions[paramName] = refNode[paramName].minValue;
|
tstOptions[paramName] = refNode[paramName].minValue;
|
||||||
should(
|
|
||||||
() => tstNode = new DynamicsCompressorNode(context, tstOptions),
|
|
||||||
`${prefix}: tstNode = new DynamicsCompressorNode(context, ${
|
|
||||||
JSON.stringify(tstOptions)})`)
|
|
||||||
.notThrow();
|
|
||||||
|
|
||||||
|
let tstNode = new DynamicsCompressorNode(context, tstOptions);
|
||||||
|
|
||||||
// Automate the AudioParam of the reference node with a linear ramp
|
// Automate the AudioParam of the reference node with a linear ramp
|
||||||
should(
|
refNode[paramName].setValueAtTime(refNode[paramName].minValue, 0);
|
||||||
() => refNode[paramName].setValueAtTime(
|
refNode[paramName].linearRampToValueAtTime(
|
||||||
refNode[paramName].minValue, 0),
|
refNode[paramName].maxValue, testDuration);
|
||||||
`${prefix}: refNode[${paramName}].setValueAtTime(refNode[${
|
|
||||||
paramName}].minValue, 0)`)
|
|
||||||
.notThrow();
|
|
||||||
|
|
||||||
should(
|
// Create the input node and automate it so that its output, when added
|
||||||
() => refNode[paramName].linearRampToValueAtTime(
|
// to the intrinsic value of the AudioParam, matches the automation
|
||||||
refNode[paramName].maxValue, testDuration),
|
// on the reference node.
|
||||||
`${prefix}: refNode[${paramName}].linearRampToValueAtTime(refNode[${
|
//
|
||||||
paramName}].minValue, ${testDuration})`)
|
// We need to do it this way because the ratio AudioParam has a nominal
|
||||||
.notThrow();
|
// range of [1, 20], so we can't just set the value to 0.
|
||||||
|
let mod = new ConstantSourceNode(context, {offset: 0});
|
||||||
|
|
||||||
|
const endValue =
|
||||||
// Create the input node and automate it so that it's output when added
|
|
||||||
// to the intrinsic value of the AudioParam we get the same values as
|
|
||||||
// the automations on the ference node. We need to do it this way
|
|
||||||
// because the ratio AudioParam has a nominal range of [1, 20] so we
|
|
||||||
// can't just set the value to 0, which is what we'd normally do.
|
|
||||||
let mod;
|
|
||||||
should(
|
|
||||||
() => mod = new ConstantSourceNode(context, {offset: 0}),
|
|
||||||
`${prefix}: mod = new ConstantSourceNode(context, {offset: 0})`)
|
|
||||||
.notThrow();
|
|
||||||
let endValue =
|
|
||||||
refNode[paramName].maxValue - refNode[paramName].minValue;
|
refNode[paramName].maxValue - refNode[paramName].minValue;
|
||||||
should(
|
|
||||||
() => mod.offset.setValueAtTime(0, 0),
|
|
||||||
`${prefix}: mod.offset.setValueAtTime(0, 0)`)
|
|
||||||
.notThrow();
|
|
||||||
should(
|
|
||||||
() => mod.offset.linearRampToValueAtTime(endValue, testDuration),
|
|
||||||
`${prefix}: mod.offset.linearRampToValueAtTime(${endValue}, ${
|
|
||||||
testDuration})`)
|
|
||||||
.notThrow();
|
|
||||||
|
|
||||||
// Connect up everything.
|
mod.offset.setValueAtTime(0, 0);
|
||||||
should(
|
mod.offset.linearRampToValueAtTime(endValue, testDuration);
|
||||||
() => mod.connect(tstNode[paramName]),
|
mod.connect(tstNode[paramName]);
|
||||||
`${prefix}: mod.connect(tstNode[${paramName}])`)
|
|
||||||
.notThrow();
|
|
||||||
|
|
||||||
src.connect(refNode).connect(merger, 0, 0);
|
src.connect(refNode).connect(merger, 0, 0);
|
||||||
src.connect(tstNode).connect(merger, 0, 1);
|
src.connect(tstNode).connect(merger, 0, 1);
|
||||||
|
|
||||||
// Go!
|
|
||||||
src.start();
|
src.start();
|
||||||
mod.start();
|
mod.start();
|
||||||
|
|
||||||
const buffer = await context.startRendering();
|
const buffer = await context.startRendering();
|
||||||
let expected = buffer.getChannelData(0);
|
const expected = buffer.getChannelData(0);
|
||||||
let actual = buffer.getChannelData(1);
|
const actual = buffer.getChannelData(1);
|
||||||
|
|
||||||
// The expected and actual results must be EXACTLY the same.
|
for (let i = 0; i < expected.length; ++i) {
|
||||||
should(actual, `k-rate ${paramName} AudioParam with input`)
|
assert_equals(
|
||||||
.beCloseToArray(expected, {absoluteThreshold: 0});
|
actual[i], expected[i],
|
||||||
|
`${prefix}: Sample[${i}] must match exactly`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
33
tests/wpt/tests/webdriver/tests/bidi/integration/parallel_execution/browsing_context_print.py
vendored
Normal file
33
tests/wpt/tests/webdriver/tests/bidi/integration/parallel_execution/browsing_context_print.py
vendored
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
import pytest
|
||||||
|
import webdriver.bidi.error as error
|
||||||
|
|
||||||
|
|
||||||
|
pytestmark = pytest.mark.asyncio
|
||||||
|
|
||||||
|
|
||||||
|
async def test_when_browsingcontext_recreated(
|
||||||
|
bidi_session, wait_for_future_safe, inline
|
||||||
|
):
|
||||||
|
new_tab = await bidi_session.browsing_context.create(type_hint="tab")
|
||||||
|
|
||||||
|
page = inline("<div>foo</div>")
|
||||||
|
await bidi_session.browsing_context.navigate(
|
||||||
|
context=new_tab["context"], url=page, wait="complete"
|
||||||
|
)
|
||||||
|
|
||||||
|
printed_future = await bidi_session.send_command(
|
||||||
|
"browsingContext.print",
|
||||||
|
{
|
||||||
|
"context": new_tab["context"],
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
await bidi_session.browsing_context.close(context=new_tab["context"])
|
||||||
|
|
||||||
|
# Closing the browsing context for printing may leave the print-preview
|
||||||
|
# window open. Make sure that creating a new tab doesn’t reference this
|
||||||
|
# window, which could cause failures.
|
||||||
|
await bidi_session.browsing_context.create(type_hint="tab")
|
||||||
|
|
||||||
|
with pytest.raises(error.UnknownErrorException):
|
||||||
|
await wait_for_future_safe(printed_future)
|
Loading…
Add table
Add a link
Reference in a new issue