aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini6
-rw-r--r--tests/wpt/metadata/MANIFEST.json931
-rw-r--r--tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html.ini4
-rw-r--r--tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html.ini4
-rw-r--r--tests/wpt/metadata/css/compositing/mix-blend-mode/mix-blend-mode-animation.html.ini2
-rw-r--r--tests/wpt/metadata/css/cssom-view/elementsFromPoint-iframes.html.ini2
-rw-r--r--tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini2
-rw-r--r--tests/wpt/metadata/fetch/content-type/response.window.js.ini17
-rw-r--r--tests/wpt/metadata/fetch/content-type/script.window.js.ini5
-rw-r--r--tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini6
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini4
-rw-r--r--tests/wpt/metadata/html/dom/reflection-forms.html.ini1140
-rw-r--r--tests/wpt/metadata/html/dom/reflection-grouping.html.ini1596
-rw-r--r--tests/wpt/metadata/html/dom/reflection-metadata.html.ini684
-rw-r--r--tests/wpt/metadata/html/dom/reflection-misc.html.ini1368
-rw-r--r--tests/wpt/metadata/html/dom/reflection-obsolete.html.ini570
-rw-r--r--tests/wpt/metadata/html/dom/reflection-sections.html.ini1710
-rw-r--r--tests/wpt/metadata/html/dom/reflection-tabular.html.ini1140
-rw-r--r--tests/wpt/metadata/html/dom/reflection-text.html.ini3306
-rw-r--r--tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini7
-rw-r--r--tests/wpt/metadata/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html.ini2
-rw-r--r--tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js.ini2
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini1
-rw-r--r--tests/wpt/metadata/websockets/Create-Secure-extensions-empty.any.js.ini8
-rw-r--r--tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini2
-rw-r--r--tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini2
-rw-r--r--tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html20
-rw-r--r--tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html19
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html68
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html69
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html69
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html69
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html69
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001-ref.html123
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001.html129
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002-ref.html125
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002.html131
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001-ref.html65
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001.html66
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001-ref.html82
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001.html73
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002-ref.html65
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002.html63
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003-ref.html68
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003.html66
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004-ref.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005-ref.html25
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006-ref.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006.html28
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007.html44
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008.html49
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009-ref.html38
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009.html48
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001-ref.html81
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001.html83
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002-ref.html33
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001-ref.html75
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001.html76
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001-ref.html82
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001.html80
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001-ref.html56
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001.html53
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001-ref.html40
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001.html42
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-002.html42
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-003.html44
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004-ref.html52
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004.html54
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005-ref.html153
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005.html155
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006-ref.html115
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006.html117
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007-ref.html134
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007.html137
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008-ref.html162
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008.html164
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html89
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001.html89
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html90
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002.html92
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html104
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003.html106
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html128
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004.html131
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001-ref.html98
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001.html88
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-invalid.html7
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-valid.html10
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-001.html73
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-002.html138
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-001.html71
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-002.html127
-rw-r--r--tests/wpt/web-platform-tests/css/cssom-view/offsetTopLeft-border-box.html61
-rw-r--r--tests/wpt/web-platform-tests/html/dom/elements-forms.js4
-rw-r--r--tests/wpt/web-platform-tests/html/dom/reflection.js1
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/autofocus/supported-elements.html2
-rw-r--r--tests/wpt/web-platform-tests/interfaces/cookie-store.idl6
-rw-r--r--tests/wpt/web-platform-tests/interfaces/geometry.idl45
-rw-r--r--tests/wpt/web-platform-tests/interfaces/pointerevents.idl3
-rw-r--r--tests/wpt/web-platform-tests/interfaces/reporting.idl2
-rw-r--r--tests/wpt/web-platform-tests/interfaces/web-animations.idl4
-rw-r--r--tests/wpt/web-platform-tests/interfaces/webmidi.idl9
-rw-r--r--tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl19
-rw-r--r--tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html20
-rw-r--r--tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html27
-rw-r--r--tests/wpt/web-platform-tests/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html163
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/attribute-mapping-001.html2
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-011.html2
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-012.html2
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-013.html2
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-014.html2
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-015.html3
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-css-keywords.html3
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-legacy-values.html3
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/html5-tree/clipboard-event-handlers.tentative.html25
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2-ref.html31
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2.html37
-rw-r--r--tests/wpt/web-platform-tests/mathml/relations/html5-tree/math-global-event-handlers.tentative.html6
-rw-r--r--tests/wpt/web-platform-tests/mathml/support/feature-detection.js40
-rw-r--r--tests/wpt/web-platform-tests/resources/chromium/nfc-mock.js10
-rw-r--r--tests/wpt/web-platform-tests/web-nfc/NFCWriter_push.https.html56
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js8
127 files changed, 18346 insertions, 155 deletions
diff --git a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
index 947e223fb28..3a3d15b8406 100644
--- a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
+++ b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
@@ -14,6 +14,9 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
+ [Revoke blob URL after calling fetch, fetch should succeed]
+ expected: FAIL
+
[url-with-fetch.any.html]
[Untitled]
@@ -34,3 +37,6 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
+ [Revoke blob URL after calling fetch, fetch should succeed]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 8f29ccc2a3d..63b24083847 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -125251,6 +125251,54 @@
{}
]
],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html": [
+ [
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html",
+ [
+ [
+ "/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html": [
+ [
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html",
+ [
+ [
+ "/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html": [
+ [
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html",
+ [
+ [
+ "/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html": [
+ [
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html",
+ [
+ [
+ "/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-grid/alignment/grid-self-alignment-stretch-input-range.html": [
[
"css/css-grid/alignment/grid-self-alignment-stretch-input-range.html",
@@ -127219,6 +127267,30 @@
{}
]
],
+ "css/css-grid/subgrid/abs-pos-001.html": [
+ [
+ "css/css-grid/subgrid/abs-pos-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/abs-pos-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/abs-pos-002.html": [
+ [
+ "css/css-grid/subgrid/abs-pos-002.html",
+ [
+ [
+ "/css/css-grid/subgrid/abs-pos-002-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-grid/subgrid/auto-track-sizing-001.html": [
[
"css/css-grid/subgrid/auto-track-sizing-001.html",
@@ -127231,6 +127303,342 @@
{}
]
],
+ "css/css-grid/subgrid/baseline-001.html": [
+ [
+ "css/css-grid/subgrid/baseline-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/baseline-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-001.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-002.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-002.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-002-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-003.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-003.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-003-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-004.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-004.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-004-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-005.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-005.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-005-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-006.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-006.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-007.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-007.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-007-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-008.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-008.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-008-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-009.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-009.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-009-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-001.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-larger-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-larger-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-002.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-larger-002.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-larger-002-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-normal-001.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-normal-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-normal-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/grid-gap-smaller-001.html": [
+ [
+ "css/css-grid/subgrid/grid-gap-smaller-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/grid-gap-smaller-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/item-percentage-height-001.html": [
+ [
+ "css/css-grid/subgrid/item-percentage-height-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/item-percentage-height-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-001.html": [
+ [
+ "css/css-grid/subgrid/line-names-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-002.html": [
+ [
+ "css/css-grid/subgrid/line-names-002.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-003.html": [
+ [
+ "css/css-grid/subgrid/line-names-003.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-004.html": [
+ [
+ "css/css-grid/subgrid/line-names-004.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-004-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-005.html": [
+ [
+ "css/css-grid/subgrid/line-names-005.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-005-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-006.html": [
+ [
+ "css/css-grid/subgrid/line-names-006.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-007.html": [
+ [
+ "css/css-grid/subgrid/line-names-007.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-007-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/line-names-008.html": [
+ [
+ "css/css-grid/subgrid/line-names-008.html",
+ [
+ [
+ "/css/css-grid/subgrid/line-names-008-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-001.html": [
+ [
+ "css/css-grid/subgrid/orthogonal-writing-mode-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-002.html": [
+ [
+ "css/css-grid/subgrid/orthogonal-writing-mode-002.html",
+ [
+ [
+ "/css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-003.html": [
+ [
+ "css/css-grid/subgrid/orthogonal-writing-mode-003.html",
+ [
+ [
+ "/css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-004.html": [
+ [
+ "css/css-grid/subgrid/orthogonal-writing-mode-004.html",
+ [
+ [
+ "/css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-grid/subgrid/subgrid-item-block-size-001.html": [
+ [
+ "css/css-grid/subgrid/subgrid-item-block-size-001.html",
+ [
+ [
+ "/css/css-grid/subgrid/subgrid-item-block-size-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-images/css-image-fallbacks-and-annotations.html": [
[
"css/css-images/css-image-fallbacks-and-annotations.html",
@@ -170745,6 +171153,30 @@
{}
]
],
+ "css/css-writing-modes/direction-upright-001.html": [
+ [
+ "css/css-writing-modes/direction-upright-001.html",
+ [
+ [
+ "/css/css-writing-modes/reference/direction-upright-001.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-writing-modes/direction-upright-002.html": [
+ [
+ "css/css-writing-modes/direction-upright-002.html",
+ [
+ [
+ "/css/css-writing-modes/reference/direction-upright-002.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-writing-modes/direction-vlr-003.xht": [
[
"css/css-writing-modes/direction-vlr-003.xht",
@@ -201933,6 +202365,18 @@
{}
]
],
+ "mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html": [
+ [
+ "mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html",
+ [
+ [
+ "/mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"mathml/presentation-markup/operators/mo-form-dynamic.html": [
[
"mathml/presentation-markup/operators/mo-form-dynamic.html",
@@ -202677,6 +203121,18 @@
{}
]
],
+ "mathml/relations/html5-tree/display-2.html": [
+ [
+ "mathml/relations/html5-tree/display-2.html",
+ [
+ [
+ "/mathml/relations/html5-tree/display-2-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"mathml/relations/html5-tree/dynamic-1.html": [
[
"mathml/relations/html5-tree/dynamic-1.html",
@@ -248682,6 +249138,9 @@
"css/css-grid/abspos/support/positioned-grid-descendants.js": [
[]
],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html": [
+ []
+ ],
"css/css-grid/alignment/grid-self-alignment-stretch-input-range-ref.html": [
[]
],
@@ -248862,9 +249321,93 @@
"css/css-grid/reference/grid-text-green-margin-no-collapse-ref.html": [
[]
],
+ "css/css-grid/subgrid/abs-pos-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/abs-pos-002-ref.html": [
+ []
+ ],
"css/css-grid/subgrid/auto-track-sizing-001-ref.html": [
[]
],
+ "css/css-grid/subgrid/baseline-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-002-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-003-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-004-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-005-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-006-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-007-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-008-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-009-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-002-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-normal-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/grid-gap-smaller-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/item-percentage-height-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-004-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-005-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-006-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-007-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/line-names-008-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html": [
+ []
+ ],
+ "css/css-grid/subgrid/subgrid-item-block-size-001-ref.html": [
+ []
+ ],
"css/css-grid/test-plan/index.html": [
[]
],
@@ -256803,6 +257346,12 @@
"css/css-writing-modes/reference/ch-units-vrl-005-ref.html": [
[]
],
+ "css/css-writing-modes/reference/direction-upright-001.html": [
+ []
+ ],
+ "css/css-writing-modes/reference/direction-upright-002.html": [
+ []
+ ],
"css/css-writing-modes/reference/full-width-001-horizontal-notref.html": [
[]
],
@@ -272628,6 +273177,9 @@
"mathml/presentation-markup/fractions/frac-visibility-001-ref.html": [
[]
],
+ "mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html": [
+ []
+ ],
"mathml/presentation-markup/operators/mo-form-dynamic-ref.html": [
[]
],
@@ -272814,6 +273366,9 @@
"mathml/relations/html5-tree/css-inline-style-dynamic.tentative-ref.html": [
[]
],
+ "mathml/relations/html5-tree/display-2-ref.html": [
+ []
+ ],
"mathml/relations/html5-tree/dynamic-1-ref.html": [
[]
],
@@ -310556,6 +311111,18 @@
{}
]
],
+ "css/CSS2/positioning/relpos-percentage-left-in-scrollable.html": [
+ [
+ "css/CSS2/positioning/relpos-percentage-left-in-scrollable.html",
+ {}
+ ]
+ ],
+ "css/CSS2/positioning/relpos-percentage-top-in-scrollable.html": [
+ [
+ "css/CSS2/positioning/relpos-percentage-top-in-scrollable.html",
+ {}
+ ]
+ ],
"css/compositing/inheritance.html": [
[
"css/compositing/inheritance.html",
@@ -326998,6 +327565,12 @@
{}
]
],
+ "css/cssom-view/offsetTopLeft-border-box.html": [
+ [
+ "css/cssom-view/offsetTopLeft-border-box.html",
+ {}
+ ]
+ ],
"css/cssom-view/offsetTopLeft-empty-inline-offset.html": [
[
"css/cssom-view/offsetTopLeft-empty-inline-offset.html",
@@ -363850,6 +364423,12 @@
{}
]
],
+ "mathml/presentation-markup/mrow/legacy-mstyle-attributes.html": [
+ [
+ "mathml/presentation-markup/mrow/legacy-mstyle-attributes.html",
+ {}
+ ]
+ ],
"mathml/presentation-markup/operators/embellished-operator-001.html": [
[
"mathml/presentation-markup/operators/embellished-operator-001.html",
@@ -515771,6 +516350,14 @@
"49c73248613c45a607b0688059a569ea6913165d",
"reftest"
],
+ "css/CSS2/positioning/relpos-percentage-left-in-scrollable.html": [
+ "54856e729010b9590619c670870837d26a6f1ed5",
+ "testharness"
+ ],
+ "css/CSS2/positioning/relpos-percentage-top-in-scrollable.html": [
+ "f4e7e2a839ffbebed02959c9b6318396ab34a215",
+ "testharness"
+ ],
"css/CSS2/positioning/right-004-ref.xht": [
"14d8891062692018a70551cb09c6a5ce5a1a6b46",
"support"
@@ -561047,6 +561634,26 @@
"1ee19e439d839ced4021725c2a27655eac001fff",
"testharness"
],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html": [
+ "df72a88262bb813963704773dd69c055e164e656",
+ "support"
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html": [
+ "19a26d8d6aa5509e81243ab431135676b3a18517",
+ "reftest"
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html": [
+ "a426f879c6e8cdc0ccdad6cc193c094ca58d63b5",
+ "reftest"
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html": [
+ "ed3bf30317fb278af487a090c51fba867289f1cc",
+ "reftest"
+ ],
+ "css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html": [
+ "5e20b88d356620c0883ff4ebda4bec3aaa1d5853",
+ "reftest"
+ ],
"css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html": [
"5f32149402d0dd0b0e4deac7a3f18c326375b5df",
"testharness"
@@ -562647,6 +563254,22 @@
"9dcba3f28fab37112a5bcb873228b66b1c7eb42b",
"support"
],
+ "css/css-grid/subgrid/abs-pos-001-ref.html": [
+ "fe316d5d3bf91110b9a2bc2ed7d26a4158868edf",
+ "support"
+ ],
+ "css/css-grid/subgrid/abs-pos-001.html": [
+ "e524ec2d767c043516546733411d7e25e6eff05b",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/abs-pos-002-ref.html": [
+ "69e071c758b65724d49af23ecd7d3d77d1970e3c",
+ "support"
+ ],
+ "css/css-grid/subgrid/abs-pos-002.html": [
+ "5d6833555eda6b06a2cc6497511130b1e6531576",
+ "reftest"
+ ],
"css/css-grid/subgrid/auto-track-sizing-001-ref.html": [
"800f87e5d00a767f1cb5e5816ffd46110fbd4e80",
"support"
@@ -562655,6 +563278,222 @@
"0fdb9b0b7e2ed8855b02dcfb9baceeb61b7d05d3",
"reftest"
],
+ "css/css-grid/subgrid/baseline-001-ref.html": [
+ "c98740b4e5af28da380e28d19f905efcfce560d8",
+ "support"
+ ],
+ "css/css-grid/subgrid/baseline-001.html": [
+ "995b1a8d2ae1aaa7c0230379e5b799b12ac9e93c",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-001-ref.html": [
+ "e7909fc2064e4d3498ab90da179cf4ad0d0e9c79",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-001.html": [
+ "0bc8eed4d8e408b18211b38095eecc0d983a96f4",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-002-ref.html": [
+ "db30524612074f8d04a2abb7a243943568eb7414",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-002.html": [
+ "bd4b74924bdf35380811e24a4e2de67c91d7d5d4",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-003-ref.html": [
+ "44053f0505ae0498d0a74da825450f0f4c445adf",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-003.html": [
+ "f8ce8655cf9da0bbca9495d77a2a2403ef9c6801",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-004-ref.html": [
+ "b1819d1eaa8747f977715a4a3003e0c90d80751b",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-004.html": [
+ "b46d22e1e39e7e61f85a19860582b11c58719d52",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-005-ref.html": [
+ "88d8b34d935647077a361d14a22be29442a76320",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-005.html": [
+ "9afba90a52954abf08719d2c115658c51b2cdec2",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-006-ref.html": [
+ "d94181ddc4f966a7bb9dae769c016098d6c929a2",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-006.html": [
+ "d79ced10c883359b66a77f1b4c5ed362f275d361",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-007-ref.html": [
+ "84d4c00235378e7e369ff527e469fe7234a4a0cf",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-007.html": [
+ "5b94fe530233ddaf47def934da6924a92e2e47e9",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-008-ref.html": [
+ "ca8d4b3f1eaa9c57b30dadbd93dbddc72f03cce5",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-008.html": [
+ "760bd92c3dfa301148eac13bfd768ef1ebd85409",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-009-ref.html": [
+ "628e4988b5343c70b3da546d924133f8e7055b55",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-009.html": [
+ "4bbf5c6e81003e21f54eb98d5bae2d5c3719580b",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-001-ref.html": [
+ "0d3050f568bd0c7ce6ee295335b17bd7e29a3c5d",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-001.html": [
+ "85725d52925b898f562329256cf60ea24486f517",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-002-ref.html": [
+ "7415de64cd5670ad433308be1e657f05f40b926b",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-larger-002.html": [
+ "4565be1b8008c83007a53cdeb27e4fee40cee50a",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-normal-001-ref.html": [
+ "ee99c02410c303b378c5ef78b6052f5e24cee4cd",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-normal-001.html": [
+ "5edf1e0762141a126bf0ae777216acc7645d40f3",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/grid-gap-smaller-001-ref.html": [
+ "fcd6851e2f84c2ec33a76b86ba4b15a70d36f7e8",
+ "support"
+ ],
+ "css/css-grid/subgrid/grid-gap-smaller-001.html": [
+ "7b59acd700b757826486916ada33ee56444b7309",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/item-percentage-height-001-ref.html": [
+ "44f0d443ffa96cfd025485c47de59d598be32b8f",
+ "support"
+ ],
+ "css/css-grid/subgrid/item-percentage-height-001.html": [
+ "15e996ea3264e4147d8c3e37b464303647ac3e0e",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-001-ref.html": [
+ "04c5839596c9e5b09ecce284c8cc757b6d1ef87c",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-001.html": [
+ "9b49e623ad754760f2118474c86dc4f208f3dd84",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-002.html": [
+ "a10a4d019b92dd0e539eecbff3e28e53601b688e",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-003.html": [
+ "43afaf9414699cd4ce66fae02f2c3ce5293ef68a",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-004-ref.html": [
+ "6ceb9d49274bac4fc648e5c85afcad733f4e134b",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-004.html": [
+ "0d2a96873dad6e40d379692b5a505a7015a5b1c9",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-005-ref.html": [
+ "4c7f4b50fd16601480e32924e1eaaa76c81b70c6",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-005.html": [
+ "43bde0b37ad2f8159c38ea0892cad9d03fe1a05b",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-006-ref.html": [
+ "e2c2ec2085bb65f315ef9fa7065e1b9a46f46c4a",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-006.html": [
+ "0aa8c80b2e233c9e9227c1a52e5e330b5ab443f5",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-007-ref.html": [
+ "2b06d9c3812a716a5117e7a5c7dcd2d10677b360",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-007.html": [
+ "d70a86b6b1469dcc657012d2f1e0867d412c5cdf",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/line-names-008-ref.html": [
+ "262fa548ec53e13f7ee8da2505a6951a18945622",
+ "support"
+ ],
+ "css/css-grid/subgrid/line-names-008.html": [
+ "7b959120c31b5b58abddbe665f87e45bea703f2f",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html": [
+ "4f0f6f962e633d8e3c7ddd78acf0247bd96e7715",
+ "support"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-001.html": [
+ "1cf99a73e2ef7b0e3fe42bbf8c188fa4d2733979",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html": [
+ "7c51c0282869d01d9c933f8dbeb7a73e1035febe",
+ "support"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-002.html": [
+ "20a4b0ccf37114e0975a2f508631caebdd17dadb",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html": [
+ "3026548c68a48adc4cebf75852f2cc4c1938d965",
+ "support"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-003.html": [
+ "2cd17d628b2021122320eafd7e9de6da5a0d215f",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html": [
+ "1de585bd6230172b9d43556c897d3270c78d9e82",
+ "support"
+ ],
+ "css/css-grid/subgrid/orthogonal-writing-mode-004.html": [
+ "4a0edd7e6d5aefe06fc0d9989c84d3871ea61a14",
+ "reftest"
+ ],
+ "css/css-grid/subgrid/subgrid-item-block-size-001-ref.html": [
+ "d264a3455a6c580976d2519ab4e0eb206b1164bf",
+ "support"
+ ],
+ "css/css-grid/subgrid/subgrid-item-block-size-001.html": [
+ "29e82197831fec5e996d0f682a8f42eca819a8ed",
+ "reftest"
+ ],
"css/css-grid/test-plan/index.html": [
"039f3a87c1a7d042af4ac043b1a5c4c4cb6c0d1e",
"support"
@@ -565464,11 +566303,11 @@
"testharness"
],
"css/css-masking/parsing/clip-path-invalid.html": [
- "129d403ed6b0d8b3a70b025c632ed6a831ab8ba6",
+ "cf8aa251c38c8888329843cdce0564d54d6f1d3f",
"testharness"
],
"css/css-masking/parsing/clip-path-valid.html": [
- "e734b9027f6d8e4175848c62dc00009b5828bef9",
+ "895cdfacac6cc8ac56e67738aed53e55be7b2fcf",
"testharness"
],
"css/css-masking/parsing/clip-rule-computed.html": [
@@ -596079,6 +596918,14 @@
"a02095a546792f539910ed1f5719236ec92870dc",
"reftest"
],
+ "css/css-writing-modes/direction-upright-001.html": [
+ "c9999951ab2df17b723b6c2da37473dbbc3c91cb",
+ "reftest"
+ ],
+ "css/css-writing-modes/direction-upright-002.html": [
+ "daa76c8ea61ceb41599a3bbb834278b59c347f72",
+ "reftest"
+ ],
"css/css-writing-modes/direction-vlr-003-ref.xht": [
"f01f983898249c97ced81cff69f54e4d9042eef5",
"support"
@@ -597743,6 +598590,14 @@
"dcbe650864c7a1be62a44988312a6278c419c84e",
"support"
],
+ "css/css-writing-modes/reference/direction-upright-001.html": [
+ "b8768ba772458287f5dfcc1d1a9daff03abf673e",
+ "support"
+ ],
+ "css/css-writing-modes/reference/direction-upright-002.html": [
+ "eac7ca9af922f56ff8e013467f49b8e456d3419c",
+ "support"
+ ],
"css/css-writing-modes/reference/full-width-001-horizontal-notref.html": [
"2666f8236a77615c3381c31279c8b03e0f224803",
"support"
@@ -601047,6 +601902,10 @@
"c88b616986511b3220449c03421e827be0d2e534",
"testharness"
],
+ "css/cssom-view/offsetTopLeft-border-box.html": [
+ "8cabf6478f7afc158617914776548db528c3a7f5",
+ "testharness"
+ ],
"css/cssom-view/offsetTopLeft-empty-inline-offset.html": [
"85abbb7c01cc95f46aeffb166fc8cd34669c85aa",
"testharness"
@@ -628432,7 +629291,7 @@
"support"
],
"html/dom/elements-forms.js": [
- "051bc2087f31558e009ab9c493dc77deed38c9c8",
+ "448a72f5ed60704c489ae7aace2a614c8a7a3831",
"support"
],
"html/dom/elements-grouping.js": [
@@ -629304,7 +630163,7 @@
"testharness"
],
"html/dom/reflection.js": [
- "5209762660bb4650e09fc390da3e7575a9af3e5c",
+ "fca9e43f245a9796982685c66ef8ee892d6cd7eb",
"support"
],
"html/dom/resources/self-origin-subframe.html": [
@@ -638824,7 +639683,7 @@
"testharness"
],
"html/semantics/forms/autofocus/supported-elements.html": [
- "398577e7d51edf10ea2571ec4e220394208f6931",
+ "761936715a3060ba4c6cca1068612c21c465ea02",
"testharness"
],
"html/semantics/forms/autofocus/update-the-rendering.html": [
@@ -646140,7 +646999,7 @@
"support"
],
"interfaces/cookie-store.idl": [
- "f5c44b60bd05dac2d54f6c36438aa0dd4a7d4471",
+ "533884fdb5865fc5fe87bd73d68983dd4b485676",
"support"
],
"interfaces/cors-rfc1918.idl": [
@@ -646284,7 +647143,7 @@
"support"
],
"interfaces/geometry.idl": [
- "d4793228dd000a2df293d67a2c2cd931e2a8b002",
+ "ada6c0c302cdff87a78a0e8ec5ac25a8f0e64922",
"support"
],
"interfaces/gyroscope.idl": [
@@ -646432,7 +647291,7 @@
"support"
],
"interfaces/pointerevents.idl": [
- "40364530d892757e8e1d23de7c3b00234f7a5bcf",
+ "85a25aa444e3dd420f14fb8c380c9f7ce16445f2",
"support"
],
"interfaces/pointerlock.idl": [
@@ -646460,7 +647319,7 @@
"support"
],
"interfaces/reporting.idl": [
- "ef20b9844699b65bc51b8a78fc7ae5ba9fd6496f",
+ "797922af0648de021c929afdee27a488e2ef198c",
"support"
],
"interfaces/requestidlecallback.idl": [
@@ -646556,7 +647415,7 @@
"support"
],
"interfaces/web-animations.idl": [
- "72ac87f3e33633864b779632c85cb2fbb473ef4c",
+ "82681e588b779f286103f494076ddae9490253da",
"support"
],
"interfaces/web-bluetooth.idl": [
@@ -646592,7 +647451,7 @@
"support"
],
"interfaces/webmidi.idl": [
- "0dfcb7771a871ff9a3568afc99a564c1e06b71a2",
+ "aa3b1ac21c899d6030ceff49af7e672f34935bac",
"support"
],
"interfaces/webrtc-dscp.idl": [
@@ -646600,7 +647459,7 @@
"support"
],
"interfaces/webrtc-stats.idl": [
- "510538decc52acb655bf505b1db72a046a1a5c1f",
+ "ab437ce0ee11eb83a6b74ab83fb3afcedf7675a2",
"support"
],
"interfaces/webrtc.idl": [
@@ -647751,6 +648610,14 @@
"140603b47f5af19e35df63ea176b460f4c7b6151",
"reftest"
],
+ "mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html": [
+ "f0b5bdd9f04e795400f2741b47ebb82d0d3a61cb",
+ "support"
+ ],
+ "mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html": [
+ "d7f0627059ad9e400480d574b5e83cff9113b107",
+ "reftest"
+ ],
"mathml/presentation-markup/mrow/inferred-mrow-baseline.html": [
"1541b2d6ce17c90a52c15f3ce5461a5c7d42920f",
"testharness"
@@ -647759,6 +648626,10 @@
"b6a51762dfda0b05cbcc272b9fb5cedad0c66a94",
"testharness"
],
+ "mathml/presentation-markup/mrow/legacy-mstyle-attributes.html": [
+ "0de9a90eed9de0b7a6b4ff9484db1c9d87376c24",
+ "testharness"
+ ],
"mathml/presentation-markup/operators/embellished-operator-001.html": [
"31bdff2fd7c2c4e463adfba2c3768d678c5c7424",
"testharness"
@@ -647956,7 +648827,7 @@
"testharness"
],
"mathml/relations/css-styling/attribute-mapping-001.html": [
- "c0c91dc23d119f85f693d2ccc5ec97c28a1a1f78",
+ "e7c6391ebad2aad8b8d31db056a209ad1d7ebba5",
"testharness"
],
"mathml/relations/css-styling/attribute-mapping-002.html": [
@@ -648012,7 +648883,7 @@
"support"
],
"mathml/relations/css-styling/displaystyle-011.html": [
- "9a85a17dd0f6bd0938199aaa6ce26fc216e11069",
+ "a73031aa3d85f2c174183cc90f37ec416f596a03",
"reftest"
],
"mathml/relations/css-styling/displaystyle-012-ref.html": [
@@ -648020,7 +648891,7 @@
"support"
],
"mathml/relations/css-styling/displaystyle-012.html": [
- "150443f25276d7b5548523ae8912fef27ca1da30",
+ "7572361f63046dd39e2ad5b408a52200a83c37ac",
"reftest"
],
"mathml/relations/css-styling/displaystyle-013-ref.html": [
@@ -648028,7 +648899,7 @@
"support"
],
"mathml/relations/css-styling/displaystyle-013.html": [
- "30be35c02471388e3b0d59a9cb22ec006ca74511",
+ "2ed4559908bc4e66aed227708eefb68646ddf517",
"reftest"
],
"mathml/relations/css-styling/displaystyle-014-ref.html": [
@@ -648036,7 +648907,7 @@
"support"
],
"mathml/relations/css-styling/displaystyle-014.html": [
- "d54a8043788a343e2b415256f59d611b49c89102",
+ "1e70cb66f3f15a2e52b3b6006329f85e2ef93731",
"reftest"
],
"mathml/relations/css-styling/displaystyle-015-ref.html": [
@@ -648044,7 +648915,7 @@
"support"
],
"mathml/relations/css-styling/displaystyle-015.html": [
- "df25171dbd621ae64ae537ceb256b0dd6f80d7f5",
+ "a288aac8196c5172068ac4f5cbd0b4c92c11d4f5",
"reftest"
],
"mathml/relations/css-styling/displaystyle-1.html": [
@@ -648148,7 +649019,7 @@
"support"
],
"mathml/relations/css-styling/mathsize-attribute-css-keywords.html": [
- "9b3852d0b379ef1959fe0f90d04bc27b78a1db5f",
+ "6390ebfabaf5cf5cf83590d86b3efd3231a55b00",
"reftest"
],
"mathml/relations/css-styling/mathsize-attribute-legacy-values-ref.html": [
@@ -648156,7 +649027,7 @@
"support"
],
"mathml/relations/css-styling/mathsize-attribute-legacy-values.html": [
- "745b1033718fcbb6d7208eff98f762d4a5799b12",
+ "abddf52590ceeddb205504ca5d1bcd9179e8fe84",
"reftest"
],
"mathml/relations/css-styling/mathsize-attribute-ref.html": [
@@ -648412,7 +649283,7 @@
"testharness"
],
"mathml/relations/html5-tree/clipboard-event-handlers.tentative.html": [
- "57ababb4a919d8a5ba876c9ecf7a72c7a113b676",
+ "82fda880887839b72ac8c683d076ea07a8525d80",
"testharness"
],
"mathml/relations/html5-tree/color-attributes-1-ref.html": [
@@ -648439,6 +649310,14 @@
"9ecd45f9a4087e41a98546d1afb6faca9d396403",
"testharness"
],
+ "mathml/relations/html5-tree/display-2-ref.html": [
+ "7864c0409914de319866ff86b19c8e423672fa69",
+ "support"
+ ],
+ "mathml/relations/html5-tree/display-2.html": [
+ "d1c68e57c6ed6d03a06ea28fd5c5b49db8a60043",
+ "reftest"
+ ],
"mathml/relations/html5-tree/dynamic-1-ref.html": [
"5fa90e9d2fe8bd44a506a8bffa4f1adec6374dda",
"support"
@@ -648500,7 +649379,7 @@
"testharness"
],
"mathml/relations/html5-tree/math-global-event-handlers.tentative.html": [
- "b5b9c75dac1c6c09b4bc74c464f468c681b43b4e",
+ "e96feeaf0960641e4413b7b43b93e46490460ee7",
"testharness"
],
"mathml/relations/html5-tree/required-extensions-2-ref.html": [
@@ -648568,7 +649447,7 @@
"support"
],
"mathml/support/feature-detection.js": [
- "69a6879f33276419ea7885969445c64ba78197b0",
+ "6f1d033b5b9ce7d8c2a6f9bfff589189719b586f",
"support"
],
"mathml/support/layout-comparison.js": [
@@ -672736,7 +673615,7 @@
"support"
],
"resources/chromium/nfc-mock.js": [
- "01a4e70d0c9730d1bf9d8ab93037549acfbee61b",
+ "025b1f6bfed599dd0a97f1a57cf7bdf78db74a78",
"support"
],
"resources/chromium/sensor.mojom.js": [
@@ -692448,7 +693327,7 @@
"testharness"
],
"web-nfc/NFCWriter_push.https.html": [
- "dcd23307a2e4bab5677d07f6780fd6a339bc463e",
+ "cc8c94188d5bbe109fc3c395dc8fa36739b0cc62",
"testharness"
],
"web-nfc/README.md": [
@@ -696008,7 +696887,7 @@
"testharness"
],
"websockets/Create-Secure-extensions-empty.any.js": [
- "0a2d883d35b6f641d762163c4ab66f4c4fae9351",
+ "bff3d1a595e64a996a217be575beb30bb8b56e3f",
"testharness"
],
"websockets/Create-Secure-url-with-space.any.js": [
diff --git a/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html.ini b/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html.ini
new file mode 100644
index 00000000000..d6c749574b4
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html.ini
@@ -0,0 +1,4 @@
+[relpos-percentage-left-in-scrollable.html]
+ [relpos-percentage-left-in-scrollable]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html.ini b/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html.ini
new file mode 100644
index 00000000000..e6c121200a0
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html.ini
@@ -0,0 +1,4 @@
+[relpos-percentage-top-in-scrollable.html]
+ [relpos-percentage-top-in-scrollable]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/compositing/mix-blend-mode/mix-blend-mode-animation.html.ini b/tests/wpt/metadata/css/compositing/mix-blend-mode/mix-blend-mode-animation.html.ini
new file mode 100644
index 00000000000..5496474410b
--- /dev/null
+++ b/tests/wpt/metadata/css/compositing/mix-blend-mode/mix-blend-mode-animation.html.ini
@@ -0,0 +1,2 @@
+[mix-blend-mode-animation.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/cssom-view/elementsFromPoint-iframes.html.ini b/tests/wpt/metadata/css/cssom-view/elementsFromPoint-iframes.html.ini
index e89282b04a1..ff5b07adb77 100644
--- a/tests/wpt/metadata/css/cssom-view/elementsFromPoint-iframes.html.ini
+++ b/tests/wpt/metadata/css/cssom-view/elementsFromPoint-iframes.html.ini
@@ -1,5 +1,5 @@
[elementsFromPoint-iframes.html]
- expected: CRASH
+ expected: TIMEOUT
[elementsFromPoint on the root document for points in iframe elements]
expected: FAIL
diff --git a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini b/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini
deleted file mode 100644
index c3916f8555d..00000000000
--- a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[contenttype_txt.html]
- expected: CRASH
diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
index 66d9dfd4fdb..1572c488b50 100644
--- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
@@ -312,27 +312,12 @@
[<iframe>: separate response Content-Type: */* text/html]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
- expected: FAIL
-
- [<iframe>: separate response Content-Type: text/plain */*]
- expected: FAIL
-
[<iframe>: combined response Content-Type: */* text/html]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;" text/plain]
- expected: FAIL
-
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;" text/plain]
- expected: FAIL
-
- [<iframe>: separate response Content-Type: text/html */*]
- expected: FAIL
-
- [<iframe>: combined response Content-Type: text/html */*;charset=gbk]
+ [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/content-type/script.window.js.ini b/tests/wpt/metadata/fetch/content-type/script.window.js.ini
index 8ce68f3b168..ac4cbcba706 100644
--- a/tests/wpt/metadata/fetch/content-type/script.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/script.window.js.ini
@@ -53,6 +53,9 @@
[combined text/javascript ]
expected: FAIL
- [separate text/javascript ]
+ [separate text/javascript;charset=windows-1252 error text/javascript]
+ expected: FAIL
+
+ [separate text/javascript x/x]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
index f8988fcd904..87c807a49ff 100644
--- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
+++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
@@ -11,9 +11,3 @@
[X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL
- [X-Content-Type-Options%3A%20'NosniFF']
- expected: FAIL
-
- [Content-Type-Options%3A%20nosniff]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
deleted file mode 100644
index dc2e45516de..00000000000
--- a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[traverse_the_history_5.html]
- [Multiple history traversals, last would be aborted]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/dom/reflection-forms.html.ini b/tests/wpt/metadata/html/dom/reflection-forms.html.ini
index cc7d34bf5b3..e24e0d9c919 100644
--- a/tests/wpt/metadata/html/dom/reflection-forms.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-forms.html.ini
@@ -24876,3 +24876,1143 @@
[datalist.accessKey: IDL set to "+100"]
expected: FAIL
+ [legend.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to false]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [label.autofocus: IDL set to false]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [label.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [output.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to false]
+ expected: FAIL
+
+ [output.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to false]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [form.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [label.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [form.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [output.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [option.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to null]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [form.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [form.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [output.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to null]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [option.autofocus: IDL set to null]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [optgroup.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [output.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to null]
+ expected: FAIL
+
+ [option.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [label.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [form.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to false]
+ expected: FAIL
+
+ [form.autofocus: IDL set to false]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [form.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [legend.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to null]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [form.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [option.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [option.autofocus: IDL set to false]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to null]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [label.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [form.autofocus: IDL set to null]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [option.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [form.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [option.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [option.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [form.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [option.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [form.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [label.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [label.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [form.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [output.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [output.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [label.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [label.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [option.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [option.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [output.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [form.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [output.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [legend.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [output.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [form.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [option.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [output.autofocus: IDL set to false]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [label.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [option.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to false]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [progress.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [output.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [form.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to null]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [output.autofocus: IDL set to null]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [optgroup.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [output.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [form.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [label.autofocus: IDL set to null]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to false]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [progress.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [legend.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [label.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [meter.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [meter.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [form.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [meter.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [output.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [progress.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [label.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [label.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [optgroup.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [option.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [fieldset.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [label.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [form.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [datalist.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [legend.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [datalist.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [meter.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [datalist.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [form.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [progress.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [fieldset.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [option.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [fieldset.autofocus: setAttribute() to true]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-grouping.html.ini b/tests/wpt/metadata/html/dom/reflection-grouping.html.ini
index 55f557661b8..7248df27c1a 100644
--- a/tests/wpt/metadata/html/dom/reflection-grouping.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-grouping.html.ini
@@ -21087,3 +21087,1599 @@
[figure.accessKey: setAttribute() to ".5"]
expected: FAIL
+ [dt.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [main.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [dt.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to null]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [ul.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dt.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [main.autofocus: IDL set to null]
+ expected: FAIL
+
+ [main.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [main.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [li.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [p.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [hr.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [main.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [ul.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [div.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to false]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [main.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [p.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [main.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to null]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to null]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [p.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [div.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to null]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [figcaption.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [pre.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [div.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to null]
+ expected: FAIL
+
+ [p.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [li.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [hr.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [p.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [li.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [figure.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [p.autofocus: IDL set to false]
+ expected: FAIL
+
+ [li.autofocus: IDL set to null]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to null]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [div.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to false]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [div.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [p.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to null]
+ expected: FAIL
+
+ [div.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to null]
+ expected: FAIL
+
+ [blockquote.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to null]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [dl.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [div.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [ol.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to false]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [li.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to false]
+ expected: FAIL
+
+ [div.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [p.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [li.autofocus: IDL set to false]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [li.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [main.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [main.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [p.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [div.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [main.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [li.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [li.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [main.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [main.autofocus: IDL set to false]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [figure.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to false]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [main.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ol.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [div.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [p.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [pre.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [figure.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [p.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [p.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [li.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ol.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dt.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dl.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [li.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [li.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [hr.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [hr.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [div.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [figcaption.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [pre.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dl.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [li.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [p.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ol.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dd.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [blockquote.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dd.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to null]
+ expected: FAIL
+
+ [dt.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [ul.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [blockquote.autofocus: IDL set to null]
+ expected: FAIL
+
+ [ul.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [li.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [p.autofocus: IDL set to null]
+ expected: FAIL
+
+ [figure.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [div.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [dd.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [p.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [dd.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [figcaption.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dl.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [pre.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-metadata.html.ini b/tests/wpt/metadata/html/dom/reflection-metadata.html.ini
index 5a64f0d50c3..483a032ffc4 100644
--- a/tests/wpt/metadata/html/dom/reflection-metadata.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-metadata.html.ini
@@ -11913,3 +11913,687 @@
[style.media: setAttribute() to "+100"]
expected: FAIL
+ [title.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [head.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [style.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [style.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [head.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to null]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [title.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [title.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [style.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [style.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [head.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [link.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to false]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [style.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [style.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [link.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [base.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [head.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [style.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [head.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [head.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [head.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [head.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [base.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [base.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [base.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [style.autofocus: IDL set to false]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [title.autofocus: IDL set to false]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [link.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [head.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [base.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [head.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [style.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [link.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [head.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [style.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [title.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [head.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [style.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [style.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [head.autofocus: IDL set to false]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [base.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [title.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [style.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [head.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [link.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to null]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [title.autofocus: IDL set to null]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [style.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [base.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [head.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [link.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [style.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [style.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [title.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [link.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [title.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [base.autofocus: IDL set to false]
+ expected: FAIL
+
+ [head.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [base.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [meta.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [base.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [style.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [head.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [base.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [link.autofocus: IDL set to null]
+ expected: FAIL
+
+ [link.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [title.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [style.autofocus: IDL set to null]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [head.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [link.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [meta.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [title.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [title.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [style.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [base.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [style.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [base.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [head.autofocus: IDL set to null]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [title.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [base.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [link.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [head.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [meta.autofocus: IDL set to false]
+ expected: FAIL
+
+ [meta.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [link.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-misc.html.ini b/tests/wpt/metadata/html/dom/reflection-misc.html.ini
index 31a1c46c69b..76ab532894d 100644
--- a/tests/wpt/metadata/html/dom/reflection-misc.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-misc.html.ini
@@ -19884,3 +19884,1371 @@
[script.accessKey: setAttribute() to ".5"]
expected: FAIL
+ [script.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [details.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [template.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [script.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [template.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [details.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [script.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [del.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [script.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to false]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to null]
+ expected: FAIL
+
+ [template.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [details.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [html.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [template.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [script.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [html.autofocus: IDL set to null]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to false]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [details.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [html.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [html.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [slot.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [slot.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [script.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [del.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [html.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [details.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [script.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [undefinedelement.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [template.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [script.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [html.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to false]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [template.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to null]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [details.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dialog.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [del.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [noscript.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [html.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to false]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [script.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [script.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [template.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [html.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [details.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [script.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [html.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [details.autofocus: IDL set to null]
+ expected: FAIL
+
+ [script.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [template.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [script.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [html.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [noscript.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [template.autofocus: IDL set to false]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to false]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to null]
+ expected: FAIL
+
+ [del.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [html.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [del.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [script.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [ins.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to null]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to null]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [template.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to null]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [template.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [template.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [template.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to false]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [script.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to null]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [script.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [details.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to false]
+ expected: FAIL
+
+ [template.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [template.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to false]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ins.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [details.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [details.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [script.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [html.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [script.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [template.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [template.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [template.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [html.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [details.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [undefinedelement.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [summary.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [del.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [menu.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [template.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [html.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [html.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [summary.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [noscript.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dialog.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [slot.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [summary.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [ins.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [del.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [details.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [html.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [slot.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [menu.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [html.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [undefinedelement.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [menu.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [menu.autofocus: IDL set to null]
+ expected: FAIL
+
+ [html.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [details.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dialog.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [script.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [ins.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [template.autofocus: IDL set to null]
+ expected: FAIL
+
+ [noscript.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [script.autofocus: IDL set to null]
+ expected: FAIL
+
+ [html.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [del.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [html.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [script.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [summary.autofocus: typeof IDL attribute]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-obsolete.html.ini b/tests/wpt/metadata/html/dom/reflection-obsolete.html.ini
index d8452f8a8b6..02209ac6791 100644
--- a/tests/wpt/metadata/html/dom/reflection-obsolete.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-obsolete.html.ini
@@ -17382,3 +17382,573 @@
[frame.src: IDL set to "+100"]
expected: FAIL
+ [frameset.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to null]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to null]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [font.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [font.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [font.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [marquee.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [font.autofocus: IDL set to null]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [font.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [font.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to null]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [frameset.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [frameset.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to false]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [dir.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [font.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [frame.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [font.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [marquee.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [font.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to null]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [frame.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dir.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [font.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to false]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [font.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [font.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [font.autofocus: IDL set to false]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [marquee.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [font.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [frameset.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to false]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [frameset.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dir.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [frame.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [frame.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dir.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [marquee.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [font.autofocus: setAttribute() to 7]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-sections.html.ini b/tests/wpt/metadata/html/dom/reflection-sections.html.ini
index a80e74f4dfa..e63285067e5 100644
--- a/tests/wpt/metadata/html/dom/reflection-sections.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-sections.html.ini
@@ -21990,3 +21990,1713 @@
[body.link: IDL set to "+100"]
expected: FAIL
+ [h3.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [section.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [header.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [article.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [header.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h6.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [address.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h6.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to false]
+ expected: FAIL
+
+ [address.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to null]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [header.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to false]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h1.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [article.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to false]
+ expected: FAIL
+
+ [body.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to null]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [article.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [article.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [body.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h2.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [section.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to false]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [body.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [article.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h4.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [article.autofocus: IDL set to false]
+ expected: FAIL
+
+ [header.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to null]
+ expected: FAIL
+
+ [aside.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [address.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [body.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [article.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [section.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to false]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [article.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [footer.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h1.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [section.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [section.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [section.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [address.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [article.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [header.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [article.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [address.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [article.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [body.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [nav.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [body.autofocus: IDL set to null]
+ expected: FAIL
+
+ [article.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h5.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [header.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [section.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [hgroup.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [article.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [nav.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [section.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [header.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [article.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to false]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [body.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [article.autofocus: IDL set to null]
+ expected: FAIL
+
+ [article.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [article.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [address.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [section.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h3.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [body.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [header.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [address.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h3.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to false]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [address.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to false]
+ expected: FAIL
+
+ [address.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to false]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [address.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [header.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [address.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to false]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [footer.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [h3.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [header.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [section.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [address.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to false]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [section.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [h4.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [article.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [section.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to false]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [header.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [address.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [body.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [footer.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [h2.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to false]
+ expected: FAIL
+
+ [body.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h6.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [address.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [header.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [h1.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [hgroup.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [body.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [aside.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [address.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to null]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [article.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [section.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [h4.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [article.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [nav.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [body.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h3.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [hgroup.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [h5.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h5.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [section.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [h2.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [h6.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [h1.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [aside.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [body.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [header.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [header.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [h5.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [h4.autofocus: IDL set to false]
+ expected: FAIL
+
+ [footer.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [nav.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-tabular.html.ini b/tests/wpt/metadata/html/dom/reflection-tabular.html.ini
index 552748c0c10..286cd7db81b 100644
--- a/tests/wpt/metadata/html/dom/reflection-tabular.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-tabular.html.ini
@@ -27585,3 +27585,1143 @@
[col.dir: setAttribute() to ".5"]
expected: FAIL
+ [table.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [col.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to null]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [td.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [td.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [col.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [td.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [table.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [th.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to null]
+ expected: FAIL
+
+ [col.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to null]
+ expected: FAIL
+
+ [td.autofocus: IDL set to null]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [td.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [th.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [col.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [th.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [table.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [caption.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [th.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [td.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [thead.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [th.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [colgroup.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [td.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [th.autofocus: IDL set to false]
+ expected: FAIL
+
+ [table.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to null]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [td.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [col.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to false]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [table.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [th.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [col.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to null]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [tr.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [th.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [table.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [tbody.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [col.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [col.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [td.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [col.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [col.autofocus: IDL set to null]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [table.autofocus: IDL set to false]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [table.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [col.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [th.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [td.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [th.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to false]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [col.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [caption.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [td.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [td.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [tr.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to false]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [col.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [table.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to false]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [table.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to false]
+ expected: FAIL
+
+ [td.autofocus: IDL set to false]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to false]
+ expected: FAIL
+
+ [td.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [col.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [tfoot.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [td.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [table.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [table.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: IDL set to null]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [col.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [th.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [col.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [th.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [col.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [td.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [th.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [td.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [colgroup.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [col.autofocus: IDL set to false]
+ expected: FAIL
+
+ [caption.autofocus: IDL set to null]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to null]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [table.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [tr.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [table.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [col.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [thead.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [colgroup.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [tbody.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [tr.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [thead.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [caption.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [td.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [col.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [td.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [tfoot.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [tbody.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [thead.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [th.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [td.autofocus: IDL set to "5%"]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/dom/reflection-text.html.ini b/tests/wpt/metadata/html/dom/reflection-text.html.ini
index b448dae635c..25b5ae1ee58 100644
--- a/tests/wpt/metadata/html/dom/reflection-text.html.ini
+++ b/tests/wpt/metadata/html/dom/reflection-text.html.ini
@@ -36453,3 +36453,3309 @@
[a.dir: setAttribute() to ".5"]
expected: FAIL
+ [var.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to null]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [time.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [q.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [br.autofocus: IDL set to false]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [a.autofocus: IDL set to false]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [cite.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [s.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to false]
+ expected: FAIL
+
+ [s.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [em.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to false]
+ expected: FAIL
+
+ [s.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [a.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to null]
+ expected: FAIL
+
+ [b.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [code.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [u.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [var.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [q.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [code.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [i.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to false]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [u.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [br.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [u.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [span.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [time.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [b.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [bdi.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to false]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [span.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [em.autofocus: IDL set to false]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to false]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [time.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to null]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [time.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [time.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [b.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to false]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [var.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [b.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [u.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to false]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [s.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [s.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [i.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [u.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [time.autofocus: IDL set to false]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [code.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [i.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [a.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [span.autofocus: IDL set to false]
+ expected: FAIL
+
+ [a.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [a.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [a.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [var.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [q.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [br.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [q.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [time.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to false]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [data.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [small.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [a.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to false]
+ expected: FAIL
+
+ [br.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [q.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to null]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to false]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [a.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [a.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to null]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [q.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to false]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [span.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [u.autofocus: IDL set to null]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [i.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [em.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [var.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [br.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to false]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [q.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [q.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [a.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [s.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to false]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [br.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [u.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [strong.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [var.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [u.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [var.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [span.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [cite.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [b.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [strong.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [time.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to null]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to null]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [q.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to false]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [br.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to false]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [u.autofocus: IDL set to false]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [span.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to null]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [time.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [br.autofocus: IDL set to null]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [sup.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [u.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [u.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [s.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [em.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [small.autofocus: IDL set to null]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [time.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [br.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [a.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [span.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [u.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [abbr.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to false]
+ expected: FAIL
+
+ [span.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [q.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to null]
+ expected: FAIL
+
+ [kbd.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [dfn.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [small.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [small.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [data.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [em.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to null]
+ expected: FAIL
+
+ [b.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [q.autofocus: IDL set to null]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [b.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [br.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [a.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [b.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [u.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [small.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [s.autofocus: IDL set to null]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [var.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [q.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [code.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [a.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [span.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [u.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [small.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [mark.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [i.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [samp.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to null]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [var.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [small.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [code.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [a.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [data.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [time.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdi.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [var.autofocus: IDL set to null]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [a.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [b.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [i.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [rp.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [var.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [em.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [time.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to false]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [mark.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [small.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [data.autofocus: IDL set to false]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to null]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [b.autofocus: IDL set to false]
+ expected: FAIL
+
+ [data.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [i.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [br.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [span.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [q.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [br.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [var.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to null]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [data.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [small.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [u.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [time.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [code.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [data.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [time.autofocus: IDL set to null]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to null]
+ expected: FAIL
+
+ [u.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [sub.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to false]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [br.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [rt.autofocus: IDL set to null]
+ expected: FAIL
+
+ [br.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [samp.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [br.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [time.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [rt.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [b.autofocus: IDL set to null]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [br.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [a.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [i.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [sub.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [i.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [time.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [u.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to null]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [var.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [span.autofocus: IDL set to null]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [u.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [em.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [wbr.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [small.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [br.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to null]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [a.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [strong.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [b.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [small.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [small.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [i.autofocus: IDL set to false]
+ expected: FAIL
+
+ [data.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to null]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to 1.5]
+ expected: FAIL
+
+ [bdo.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to "5%"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [span.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [em.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [rt.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [sub.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [span.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [i.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [span.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [q.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [kbd.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to "autofocus"]
+ expected: FAIL
+
+ [u.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [bdo.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [kbd.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to undefined]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [sup.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [br.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [q.autofocus: IDL set to object "test-toString"]
+ expected: FAIL
+
+ [small.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [rp.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [br.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [data.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [ruby.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to -Infinity]
+ expected: FAIL
+
+ [q.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [a.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [s.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [em.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [bdi.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [b.autofocus: IDL set to "\\0"]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to 7]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [data.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [wbr.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to " foo "]
+ expected: FAIL
+
+ [b.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [s.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [code.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [code.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [cite.autofocus: IDL set to object "[object Object\]"]
+ expected: FAIL
+
+ [samp.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to ""]
+ expected: FAIL
+
+ [rt.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [rp.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [u.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [br.autofocus: IDL set to undefined]
+ expected: FAIL
+
+ [abbr.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [q.autofocus: IDL set to false]
+ expected: FAIL
+
+ [kbd.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to false]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [code.autofocus: IDL set to null]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [cite.autofocus: setAttribute() to true]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [i.autofocus: IDL set to "+100"]
+ expected: FAIL
+
+ [time.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [ruby.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [abbr.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [time.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [em.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [rp.autofocus: IDL set to NaN]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to object "test-toString"]
+ expected: FAIL
+
+ [em.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to 1.5]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to false]
+ expected: FAIL
+
+ [var.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [q.autofocus: setAttribute() to "+100"]
+ expected: FAIL
+
+ [samp.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [sub.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to object "test-valueOf"]
+ expected: FAIL
+
+ [dfn.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [q.autofocus: typeof IDL attribute]
+ expected: FAIL
+
+ [s.autofocus: setAttribute() to "\\0"]
+ expected: FAIL
+
+ [ruby.autofocus: IDL set to ".5"]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
+ [bdo.autofocus: IDL set to " foo "]
+ expected: FAIL
+
+ [time.autofocus: IDL set to Infinity]
+ expected: FAIL
+
+ [mark.autofocus: setAttribute() to null]
+ expected: FAIL
+
+ [mark.autofocus: IDL set to "5%"]
+ expected: FAIL
+
+ [q.autofocus: IDL get with DOM attribute unset]
+ expected: FAIL
+
+ [dfn.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [strong.autofocus: IDL set to 7]
+ expected: FAIL
+
+ [time.autofocus: setAttribute() to object "test-valueOf"]
+ expected: FAIL
+
+ [i.autofocus: setAttribute() to NaN]
+ expected: FAIL
+
+ [sup.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to ""]
+ expected: FAIL
+
+ [var.autofocus: setAttribute() to Infinity]
+ expected: FAIL
+
+ [a.autofocus: setAttribute() to object "[object Object\]"]
+ expected: FAIL
+
+ [wbr.autofocus: setAttribute() to ".5"]
+ expected: FAIL
+
+ [a.autofocus: IDL set to null]
+ expected: FAIL
+
+ [bdi.autofocus: IDL set to -Infinity]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini b/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini
deleted file mode 100644
index 9e522297c94..00000000000
--- a/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[toggleEvent.html]
- [Calling open twice on 'details' fires only one toggle event]
- expected: FAIL
-
- [Setting open=true to opened 'details' element should not fire a toggle event at the 'details' element]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html.ini
deleted file mode 100644
index 178680e5d14..00000000000
--- a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[script-onerror-insertion-point-2.html]
- expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js.ini b/tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js.ini
index 910c88d3e81..69bd952d756 100644
--- a/tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js.ini
+++ b/tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js.ini
@@ -1,5 +1,5 @@
[ignore-opens-during-unload.window.html]
- expected: CRASH
+ expected: TIMEOUT
[ignore-opens-during-unload]
expected: FAIL
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
index 66bd350083b..a56bad443a2 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
@@ -1,4 +1,5 @@
[realtimeanalyser-fft-scaling.html]
+ expected: TIMEOUT
[X 2048-point FFT peak position is not equal to 64. Got 0.]
expected: FAIL
diff --git a/tests/wpt/metadata/websockets/Create-Secure-extensions-empty.any.js.ini b/tests/wpt/metadata/websockets/Create-Secure-extensions-empty.any.js.ini
index 41e56e4a392..0d25673bf8f 100644
--- a/tests/wpt/metadata/websockets/Create-Secure-extensions-empty.any.js.ini
+++ b/tests/wpt/metadata/websockets/Create-Secure-extensions-empty.any.js.ini
@@ -1,5 +1,4 @@
[Create-Secure-extensions-empty.any.html]
- expected: TIMEOUT
[W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened]
expected: FAIL
@@ -9,12 +8,8 @@
[Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened]
expected: FAIL
- [Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be closed]
- expected: NOTRUN
-
[Create-Secure-extensions-empty.any.worker.html]
- expected: TIMEOUT
[W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened]
expected: FAIL
@@ -24,6 +19,3 @@
[Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened]
expected: FAIL
- [Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be closed]
- expected: NOTRUN
-
diff --git a/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini b/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini
new file mode 100644
index 00000000000..80f9a4f15b8
--- /dev/null
+++ b/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini
@@ -0,0 +1,2 @@
+[Worker-constructor.html]
+ expected: ERROR
diff --git a/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini b/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini
new file mode 100644
index 00000000000..dbea4f293ad
--- /dev/null
+++ b/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini
@@ -0,0 +1,2 @@
+[transition_calc_implicit.html]
+ expected: TIMEOUT
diff --git a/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html b/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html
new file mode 100644
index 00000000000..54856e72901
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-left-in-scrollable.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#propdef-left">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#relative-positioning">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=908083">
+<p>There should be no red, and no scrollbar.</p>
+<div id="container" style="overflow:auto; width:500px; background:red;">
+ <div style="padding-right:90%; background:yellow;">
+ <div style="position:relative; left:900%; width:50px; height:50px; background:cyan;">
+ </div>
+ </div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+ container.scrollLeft = 123456;
+ test(()=> {
+ assert_equals(container.scrollLeft, 0);
+ }, "Left percentage resolved correctly for overflow contribution");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html b/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html
new file mode 100644
index 00000000000..f4e7e2a839f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/CSS2/positioning/relpos-percentage-top-in-scrollable.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#propdef-top">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#relative-positioning">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=908083">
+<p>There should be a green square below.</p>
+<div style="position:relative; width:200px; height:200px;">
+ <div id="container" style="overflow:hidden; position:absolute; top:0; left:0; bottom:0; right:0;">
+ <div style="position:relative; top:100%; width:100px; height:100px; background:green;"></div>
+ </div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+ container.scrollTop = 123456;
+ test(()=> {
+ assert_equals(container.scrollTop, 100);
+ }, "Top percentage resolved correctly for overflow contribution");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html
new file mode 100644
index 00000000000..df72a88262b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001-ref.html
@@ -0,0 +1,68 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: baseline align a display:block item with a display:grid item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.inner-grid {
+ background: lightgrey;
+ grid-column: 2;
+ grid-row: 3;
+ min-width: 10px;
+ min-height: 0;
+ border: 0 solid lightblue;
+ border-top-width: 10px;
+ border-bottom-width: 40px;
+ padding-bottom: 20px;
+}
+
+x, z {
+ display: block;
+ min-width: 40px;
+ min-height: 10px;
+ font-size: 10em;
+ background: silver;
+}
+z {
+ width: 40px;
+ height: 10px;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x>&nbsp;A</x><z></z>
+</div>
+</div>
+
+<div class="grid" style="align-items:last baseline">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <z></z><x>&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html
new file mode 100644
index 00000000000..19a26d8d6aa
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-001.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: baseline align a display:block item with a display:grid item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid/#grid-baselines">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-self-alignment-baseline-with-grid-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.inner-grid {
+ display: grid;
+ grid: auto auto / auto;
+ background: lightgrey;
+ grid-column: 2;
+ grid-row: 3;
+ min-width: 10px;
+ min-height: 0;
+ border: 0 solid lightblue;
+ border-top-width: 10px;
+ border-bottom-width: 40px;
+ place-content: inherit;
+ place-items: inherit;
+ padding-bottom: 20px;
+}
+
+x {
+ min-width: 40px;
+ min-height: 10px;
+ font-size: 10em;
+ background: silver;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x>&nbsp;A</x><x style="grid-row:2"></x>
+</div>
+</div>
+
+<div class="grid" style="align-items:last baseline">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x></x><x style="grid-row:2">&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html
new file mode 100644
index 00000000000..a426f879c6e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-002.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: baseline align a display:block item with a display:grid item with spanned item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid/#grid-baselines">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-self-alignment-baseline-with-grid-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.inner-grid {
+ display: grid;
+ grid: auto auto / auto;
+ background: lightgrey;
+ grid-column: 2;
+ grid-row: 3;
+ min-width: 10px;
+ min-height: 0;
+ border: 0 solid lightblue;
+ border-top-width: 10px;
+ border-bottom-width: 40px;
+ place-content: inherit;
+ place-items: inherit;
+ padding-bottom: 20px;
+}
+
+x {
+ min-width: 40px;
+ min-height: 10px;
+ font-size: 10em;
+ background: silver;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x style="grid-row:1/span 3">&nbsp;A</x><x style="grid-column:1"></x>
+</div>
+</div>
+
+<div class="grid" style="align-items:last baseline">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x></x><x style="grid-row:2/span 3">&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html
new file mode 100644
index 00000000000..ed3bf30317f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-003.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: baseline align a display:block item with a display:grid spanned item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid/#grid-baselines">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-self-alignment-baseline-with-grid-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.inner-grid {
+ display: grid;
+ grid: auto auto / auto;
+ background: lightgrey;
+ grid-column: 2;
+ grid-row: 2 / span 2;
+ min-width: 10px;
+ min-height: 0;
+ border: 0 solid lightblue;
+ border-top-width: 10px;
+ border-bottom-width: 40px;
+ place-content: inherit;
+ place-items: inherit;
+ padding-bottom: 20px;
+}
+
+x {
+ min-width: 40px;
+ min-height: 10px;
+ font-size: 10em;
+ background: silver;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:2/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x>&nbsp;A</x><x style="grid-row:2"></x>
+</div>
+</div>
+
+<div class="grid" style="align-items:last baseline">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x></x><x style="grid-row:2">&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html
new file mode 100644
index 00000000000..5e20b88d356
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-baseline-with-grid-004.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: baseline align a display:block item with a display:grid spanned item with spanned item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid/#grid-baselines">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-self-alignment-baseline-with-grid-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.inner-grid {
+ display: grid;
+ grid: auto auto / auto;
+ background: lightgrey;
+ grid-column: 2;
+ grid-row: 2 / span 2;
+ min-width: 10px;
+ min-height: 0;
+ border: 0 solid lightblue;
+ border-top-width: 10px;
+ border-bottom-width: 40px;
+ place-content: inherit;
+ place-items: inherit;
+ padding-bottom: 20px;
+}
+
+x {
+ min-width: 40px;
+ min-height: 10px;
+ font-size: 10em;
+ background: silver;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:2/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x style="grid-row:1/span 3">&nbsp;A</x><x style="grid-row:4"></x>
+</div>
+</div>
+
+<div class="grid" style="align-items:last baseline">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="inner-grid">
+ <x></x><x style="grid-row:2/span 3">&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001-ref.html
new file mode 100644
index 00000000000..fe316d5d3bf
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001-ref.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: grid-aligned abs.pos. inside subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / repeat(10, 30px) 100px;
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ position: relative;
+ padding: 4px 3px 1px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: 0 / repeat(10, 30px) 100px;
+ background: lightgrey;
+ grid-column: 2 / span 8;
+ min-width:0;
+ min-height:0;
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+ background: pink;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ position: absolute;
+ top:0; bottom:0; left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001.html
new file mode 100644
index 00000000000..e524ec2d767
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-001.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: grid-aligned abs.pos. inside subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="abs-pos-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(10, 30px);
+ grid-template-areas: ". . . . . . . . . . .";
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ grid-auto-columns: 100px;
+ grid-auto-rows: 100px;
+ position: relative;
+ padding: 4px 3px 1px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: auto / subgrid;
+ background: lightgrey;
+ grid-column: 2 / span 8;
+ grid-row: 2 / span 2;
+ min-width:0;
+ min-height:0;
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+ background: pink;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ position: absolute;
+ top:0; bottom:0; left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002-ref.html
new file mode 100644
index 00000000000..69e071c758b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002-ref.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: grid-aligned abs.pos. inside rel.pos. subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(10, 30px) 100px;
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ padding: 1px 2px;
+}
+
+.subgrid {
+ position: relative;
+ display: grid;
+ grid: auto / 27px repeat(7, 30px);
+ grid-column: 2 / span 8;
+ grid-row: 2 / span 2;
+ padding: 4px 0 1px 0;
+ border: 3px solid black;
+ min-height: 1em;
+ background: yellow;
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+ background: pink;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ position: absolute;
+ top:0; bottom:0; left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3; right:33px">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/1; right:-10px">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/-1; left:13px">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/1; left:-33px">x</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002.html
new file mode 100644
index 00000000000..5d6833555ed
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/abs-pos-002.html
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: grid-aligned abs.pos. inside rel.pos. subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="abs-pos-002-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(10, 30px);
+ grid-template-areas: ". . . . . . . . . . .";
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ grid-auto-columns: 100px;
+ grid-auto-rows: 100px;
+ padding: 1px 2px;
+}
+
+.subgrid {
+ position: relative;
+ display: grid;
+ grid: auto / subgrid;
+ grid-column: 2 / span 8;
+ grid-row: 2 / span 2;
+ padding: 4px 33px 1px 10px;
+ border: 3px solid black;
+ min-width: 0;
+ min-height: 1em;
+ background: yellow;
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+ background: pink;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ position: absolute;
+ top:0; bottom:0; left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/5">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3/-1">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/3">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr">
+ <x style="grid-column:auto/1">x</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001-ref.html
new file mode 100644
index 00000000000..c98740b4e5a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001-ref.html
@@ -0,0 +1,65 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: baseline-aligned subgrid item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.subgrid {
+ background: lightgrey;
+ grid-column: 2 / span 4;
+ grid-row: 3 / span 2;
+ min-width: 10px;
+ min-height: 0;
+ background: yellow;
+}
+
+x, z {
+ display: block;
+ min-width: 20px;
+ min-height: 10px;
+ font-size: 8em;
+ background: silver;
+}
+z {
+ width: 20px;
+ height: 10px;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:3/1">A&nbsp;</y>
+<div class="subgrid">
+ <z></z><x>&nbsp;A</x>
+</div>
+</div>
+
+<div class="grid" style="align-items: last baseline">
+<y style="grid-area:4/1">A&nbsp;</y>
+<div class="subgrid">
+ <z></z><x>&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001.html
new file mode 100644
index 00000000000..995b1a8d2ae
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/baseline-001.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: baseline-aligned subgrid item</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="baseline-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 20px repeat(4, auto) 30px / 30px repeat(4, auto) 20px;
+ place-content: start;
+ place-items: baseline start;
+ border: 1px solid;
+ text-decoration: underline blue;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ background: lightgrey;
+ grid-column: 2 / span 4;
+ grid-row: 3 / span 2;
+ min-width: 10px;
+ min-height: 0;
+ background: yellow;
+ place-content: inherit;
+ place-items: inherit;
+}
+
+x {
+ min-width: 20px;
+ min-height: 10px;
+ font-size: 8em;
+ background: silver;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<y style="grid-area:4/1">A&nbsp;</y>
+<div class="subgrid">
+ <x style="grid-row:2">&nbsp;A</x><x></x>
+</div>
+</div>
+
+<div class="grid" style="align-items: last baseline">
+<y style="grid-area:4/1">A&nbsp;</y>
+<div class="subgrid">
+ <x></x><x style="grid-row:2">&nbsp;A</x>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001-ref.html
new file mode 100644
index 00000000000..e7909fc2064
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001-ref.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid with definite grid-gap in both axes</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: inline-grid;
+ gap: 20px 10px;
+ grid-template-columns: repeat(4,auto);
+ grid-template-rows: repeat(3,auto);
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-area: 1 / 1 / 2 / 3;
+ }
+
+ .b {
+ grid-area: 1/4;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ margin-right: 10px;
+ }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ row-gap: 100px;
+ column-gap: 10px;
+ grid: repeat(2,auto) / repeat(3,auto);
+ }
+
+ .e {
+ grid-area: 1/2; visibility:hidden; margin-left:15px;
+ }
+ .f {
+ grid-area: 1/3; visibility:hidden; margin-left:10px;
+ }
+ .g {
+ grid-area: 1/4; visibility:hidden; margin-left:15px;
+ }
+</style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div><div class="box e">E</div><div class="box f">F</div><div class="box g">G</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box">E</div>
+ <div class="box">F</div>
+ <div class="box">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001.html
new file mode 100644
index 00000000000..0bc8eed4d8e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-001.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with definite grid-gap in both axes</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: inline-grid;
+ gap: 20px;
+ grid-template-columns: repeat(4,auto);
+ grid-template-rows: repeat(3,auto);
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ row-gap: 100px;
+ column-gap: 10px;
+ grid: subgrid / subgrid;
+ }
+</style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002-ref.html
new file mode 100644
index 00000000000..db305246120
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002-ref.html
@@ -0,0 +1,65 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with border-bottom</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ gap: 10px 20px;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ background: yellow;
+}
+
+.subgrid > * { background: lightgrey; }
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: magenta; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: grey; }
+
+e {
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+ margin: -5px 0;
+}
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid">
+<c>c</c>
+<d>d</d>
+<e></e>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002.html
new file mode 100644
index 00000000000..bd4b74924bd
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-002.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with border-bottom</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-002-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ gap: 10px 20px;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+ background: yellow;
+}
+
+.subgrid > * { background: lightgrey; }
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: magenta; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid">
+<c>c</c>
+<d>d</d>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003-ref.html
new file mode 100644
index 00000000000..44053f0505a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003-ref.html
@@ -0,0 +1,68 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid with border-bottom and percentage gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 0 15px 15px 0 0 40px / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: repeat(4, auto) / auto auto;
+ gap: 3px 8px;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ background: grey;
+ width: 40px;
+ height: 30px;
+}
+
+.subgrid > * { background: lightgrey; }
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: magenta; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: grey; }
+
+e { display:block; width: 20px; height:15px; background:black; }
+
+f {
+ grid-area: 4/2/span 1/span 5;
+ background: lightblue!important;
+ height: 40px;
+}
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1; height:0"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<f></f>
+<div class="subgrid">
+<c><e></e></c>
+<d><e></e></d>
+<c><e></e></c>
+<d><e></e></d>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003.html
new file mode 100644
index 00000000000..f8ce8655cf9
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-003.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with border-bottom and percentage gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-003-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto auto;
+ gap: 20% 20%;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+ background: grey;
+}
+
+.subgrid > * { background: lightgrey; }
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: magenta; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: grey; }
+
+e { display:block; width: 20px; height:15px; background:black; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid">
+<c><e></e></c>
+<d><e></e></d>
+<c><e></e></c>
+<d><e></e></d>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004-ref.html
new file mode 100644
index 00000000000..b1819d1eaa8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/100px auto;
+ gap:20px;
+ border:3px solid;
+ background:yellow;
+}
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div style="display:grid; grid: 100px 1em / 100px 1em; gap:60px; grid-area:span 2/span 2">
+ <div style="display:grid; grid: 60px 1em / 100px; gap:100px; grid-row:span 2">
+ <span>a</span><span>b</span>
+ </div>
+ <span style="grid-area:2/2">c</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004.html
new file mode 100644
index 00000000000..b46d22e1e39
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-004.html
@@ -0,0 +1,37 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-004-ref.html">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/100px auto;
+ gap:20px;
+ border:3px solid;
+ background:yellow;
+}
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div style="display:grid; grid:subgrid/subgrid; gap:100px; grid-area:span 2/span 2">
+ <div style="display:grid; grid:subgrid/100px; gap:100px; grid-row:span 2">
+ <span>a</span><span>b</span>
+ </div>
+ <span style="grid-area:2/2">c</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005-ref.html
new file mode 100644
index 00000000000..88d8b34d935
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005-ref.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div style="display:inline-grid; grid:100px/100px 0px; gap:100px; border:1px solid;">
+ <div style="display:grid; grid:100px/140px calc(40px); gap:20px; grid-column:span 2">
+ <span>a</span><span>b</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005.html
new file mode 100644
index 00000000000..9afba90a529
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-005.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-005-ref.html">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div style="display:inline-grid; grid:100px/100px 0px; gap:100px; border:1px solid;">
+ <div style="display:grid; grid:100px/subgrid; gap:20px; grid-column:span 2">
+ <span>a</span><span>b</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006-ref.html
new file mode 100644
index 00000000000..d94181ddc4f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006-ref.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested subgrid, justify-content:space-around, overflowing</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+body { margin:200px; }
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div style="display:inline-grid; grid:100px/100px 10px 10px; gap:100px; border:1px solid; justify-content:center; width:50px">
+ <div style="display:grid; grid:100px/140px 50px; gap:20px; grid-column:span 2">
+ <span>a</span><span>b</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006.html
new file mode 100644
index 00000000000..d79ced10c88
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-006.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML>
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested subgrid, justify-content:space-around, overflowing</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-006-ref.html">
+<style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+body { margin:200px; }
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div style="display:inline-grid; grid:100px/100px 10px 10px; gap:100px; border:1px solid; justify-content:space-around; width:50px">
+ <div style="display:grid; grid:100px/subgrid; gap:20px; grid-column:span 2">
+ <span>a</span><span>b</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007-ref.html
new file mode 100644
index 00000000000..84d4c002353
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested ortogonal writing-mode subgrids</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:60px auto/100px auto;
+ gap:100px 60px;
+ border:3px solid;
+ background:pink;
+}
+span { background:grey; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <span style="grid-area:1/1; background:lightgrey; width:60px; height:160px"></span>
+ <span style="grid-area:1/1">a</span>
+ <span style="grid-row:2; background:cyan">b</span>
+ <span style="grid-area:2/2" class="vrl">ccc</span>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007.html
new file mode 100644
index 00000000000..5b94fe53023
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-007.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested ortogonal writing-mode subgrids</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-007-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/100px auto;
+ gap:20px;
+ border:3px solid;
+ background:yellow;
+}
+span { background:cyan; }
+span:nth-child(2n+1) { background:grey; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="vrl" style="display:grid; grid:subgrid/subgrid; gap:100px; grid-area:span 2/span 2; background:pink">
+ <div class="hl" style="display:grid; grid:subgrid/100px; gap:100px; grid-column:span 2; background:lightgrey">
+ <span>a</span><span>b</span>
+ </div>
+ <span style="grid-area:1/2">ccc</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008-ref.html
new file mode 100644
index 00000000000..ca8d4b3f1ea
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested orthogonal writing-mode subgrids with percentage column-gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px 375px/300px;
+ border:3px solid;
+ width: 300px;
+ height: 500px;
+ background:lightgrey;
+ row-gap: 25px;
+}
+span {
+ grid-row:2;
+ background:cyan;
+ width:50px;
+}
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <span>ccc</span>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008.html
new file mode 100644
index 00000000000..760bd92c3df
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-008.html
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested orthogonal writing-mode subgrids with percentage column-gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-008-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/200px auto;
+ border:3px solid;
+ background:grey;
+ width: 300px;
+ height: 500px;
+}
+.subgrid {
+ display: grid;
+ grid: 50px / subgrid;
+ column-gap: 10%;
+ grid-area: span 2/span 2;
+ justify-content:end;
+ background:lightgrey;
+}
+span { background:cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid vlr">
+ <span class="hl">ccc</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009-ref.html
new file mode 100644
index 00000000000..628e4988b53
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009-ref.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: nested orthogonal writing-mode subgrids with percentage row-gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:400px/300px;
+ border:3px solid;
+ background:lightgrey;
+ width:300px;
+ height:400px;
+}
+span {
+ margin-top:350px;
+ margin-right:115px;
+ background:cyan;
+}
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <span>cc</span>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009.html
new file mode 100644
index 00000000000..4bbf5c6e810
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-009.html
@@ -0,0 +1,48 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested orthogonal writing-mode subgrids with percentage row-gap</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="grid-gap-009-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/200px auto;
+ border:3px solid;
+ background:grey;
+ width:300px;
+ height:400px;
+}
+.subgrid {
+ display: grid;
+ grid: subgrid / 50px;
+ row-gap: 10%;
+ grid-area: span 2/span 2;
+ background:lightgrey;
+}
+span { background:cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid vlr">
+ <span class="hl">cc</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001-ref.html
new file mode 100644
index 00000000000..0d3050f568b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001-ref.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid grid-gap:20px</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 0;
+ grid-template-columns: 150px 100px 150px 100px;
+ grid-template-rows: repeat(3,auto);
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4 ;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .box .f { background-color: purple; }
+ .box .i { background-color: blue; }
+ .box .e { background-color: yellow; }
+ .a { background-color: grey; }
+ .c { background-color: black; }
+ .b { background-color: black; }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ gap: 20px;
+ grid: auto / 70px 130px 70px;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001.html
new file mode 100644
index 00000000000..85725d52925
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-001.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid grid-gap:20px</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-larger-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 0;
+ grid-template-columns: 150px 100px 150px 100px;
+ grid-template-rows: repeat(3,auto);
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4 ;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .box .f { background-color: purple; }
+ .box .i { background-color: blue; }
+ .box .e { background-color: yellow; }
+ .a { background-color: grey; }
+ .c { background-color: black; }
+ .b { background-color: black; }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ gap: 20px;
+ grid: subgrid / subgrid;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002-ref.html
new file mode 100644
index 00000000000..7415de64cd5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with larger gap than parent grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/100px;
+ gap:20px;
+ border:3px solid;
+ background:yellow;
+}
+span { background:lightgrey; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <span style="height:60px">a</span><span style="margin-top:40px">b</span>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002.html
new file mode 100644
index 00000000000..4565be1b800
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-larger-002.html
@@ -0,0 +1,37 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid with larger gap than parent grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-larger-002-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display:inline-grid;
+ grid:100px auto/100px;
+ gap:20px;
+ border:3px solid;
+ background:yellow;
+}
+span { background:lightgrey; }
+span:nth-child(2n+1) { background:grey; }
+</style>
+</head>
+<body>
+
+<div class="grid">
+ <div style="display:grid; grid:subgrid/100px; gap:100px; grid-row:span 2">
+ <span>a</span><span>b</span>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001-ref.html
new file mode 100644
index 00000000000..ee99c02410c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001-ref.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid grid-gap:normal</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 10px;
+ grid-template-columns: 150px 100px 150px 100px;
+ grid-template-rows: repeat(3,minmax(100px,auto));
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4 ;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ gap: 10px;
+ grid-template-columns: 80px 150px 80px;
+ grid-template-rows: 80px 80px;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001.html
new file mode 100644
index 00000000000..5edf1e07621
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-normal-001.html
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid grid-gap:normal</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-normal-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 10px;
+ grid-template-columns: 150px 100px 150px 100px;
+ grid-template-rows: repeat(3,minmax(100px,auto));
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4 ;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ grid-template-columns: subgrid;
+ grid-template-rows: subgrid;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001-ref.html
new file mode 100644
index 00000000000..fcd6851e2f8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001-ref.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid grid-gap:0px</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 20px;
+ grid-template-columns: 170px 100px 190px 100px;
+ grid-template-rows: repeat(3,auto);
+ gap: 0;
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ margin-bottom: 20px;
+ }
+
+ .b {
+ grid-column: 4 ;
+ margin-bottom: 20px;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ margin-right: 20px;
+ }
+
+ .box .f { background-color: purple; }
+ .box .i { background-color: blue; }
+ .box .e { background-color: yellow; }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ gap: 0;
+ grid-template-columns: 90px 170px 90px;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001.html
new file mode 100644
index 00000000000..7b59acd700b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/grid-gap-smaller-001.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid grid-gap:0px</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="grid-gap-smaller-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+ .wrapper {
+ display: grid;
+ gap: 20px;
+ grid-template-columns: 150px 100px 150px 100px;
+ grid-template-rows: repeat(3,auto);
+ background-color: #fff;
+ color: #444;
+ }
+
+ .box {
+ background-color: #444;
+ color: #fff;
+ padding: 20px;
+ }
+
+ .box .box {
+ background-color: #ccc;
+ color: #444;
+ }
+
+ .a {
+ grid-column: 1 / 3;
+ }
+
+ .b {
+ grid-column: 4 ;
+ }
+
+ .c {
+ grid-column: 1;
+ grid-row: 2 / 4;
+ }
+
+ .box .f { background-color: purple; }
+ .box .i { background-color: blue; }
+ .box .e { background-color: yellow; }
+
+ .d {
+ grid-column: 2 / 5;
+ grid-row: 2 / 4;
+ display: grid;
+ gap: 0;
+ grid: subgrid / subgrid;
+ }
+
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+ <div class="box a">A</div>
+ <div class="box b">B</div>
+ <div class="box c">C</div>
+ <div class="box d">
+ <div class="box e">E</div>
+ <div class="box f">F</div>
+ <div class="box g">G</div>
+ <div class="box h">H</div>
+ <div class="box i">I</div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001-ref.html
new file mode 100644
index 00000000000..44f0d443ffa
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001-ref.html
@@ -0,0 +1,56 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid item percentage height</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style type="text/css">
+
+.wrapper {
+ padding: 2px;
+ padding-top: 5px;
+ border: 1px solid;
+}
+.grid {
+ display: grid;
+ grid: auto auto / auto;
+ grid-row-gap: 60px;
+ height: 300px;
+ background: lightgrey;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ grid-row: span 2;
+ grid-row-gap: 40px;
+ padding: 10px;
+ padding-top: 5px;
+}
+
+.item {
+ align-self: start;
+ width: 100px;
+ background: grey;
+ margin-left: 10px;
+}
+
+.hidden { visibility: hidden; }
+.a1 { grid-area: 1/1; }
+.a2 { grid-area: 2/1; }
+ </style>
+</head>
+<body>
+
+<div class="wrapper">
+<div class="grid">
+ <div class="item hidden a1" style="height:25px"></div><div class="item a1" style="margin-top:5px; margin-bottom:-10px; align-self:stretch"></div>
+ <div class="item hidden a2" style="height:120px"></div><div class="item a2" style="margin-top:-10px; height:100px"></div>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001.html
new file mode 100644
index 00000000000..15e996ea326
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/item-percentage-height-001.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid item percentage height</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="item-percentage-height-001-ref.html">
+ <style type="text/css">
+
+.grid {
+ display: grid;
+ grid: auto auto / auto;
+ grid-row-gap: 60px;
+ border: 1px solid;
+ padding: 2px;
+ padding-top: 5px;
+ height: 300px;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ grid-row: span 2;
+ grid-row-gap: 40px;
+ background: lightgrey;
+ padding: 10px;
+ padding-top: 5px;
+}
+
+.item {
+ align-self: start;
+ height: 100%;
+ width: 100px;
+ background: grey;
+}
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <div class="item"></div>
+ <div class="item" style="height:100px"></div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001-ref.html
new file mode 100644
index 00000000000..04c5839596c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001-ref.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid item using line names from outer grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / [a] 50px 50px [a] 50px 50px [a];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: 50px / subgrid;
+ grid-column: span 3;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <x style="grid-column: 1 / 3"></x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001.html
new file mode 100644
index 00000000000..9b49e623ad7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-001.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid item using line names from outer grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / [a] 50px 50px [a] 50px 50px [a];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: 50px / subgrid;
+ grid-column: span 3;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <x style="grid-column: span a / a -1"></x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-002.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-002.html
new file mode 100644
index 00000000000..a10a4d019b9
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-002.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid item using line names from outer grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / repeat(10, 10px) repeat(10, [a] 10px) [a];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: 50px / subgrid;
+ grid-column: span 10;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <x style="grid-column: span a / a 8"></x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-003.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-003.html
new file mode 100644
index 00000000000..43afaf94146
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-003.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: nested subgrid item using line names from outer grid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / [a] 50px 50px [a] 50px 50px [a];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid: 50px / subgrid;
+ grid-column: span 4;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <div class="subgrid" style="grid-column: span 3">
+ <x style="grid-column: span a / a -1"></x>
+ </div>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004-ref.html
new file mode 100644
index 00000000000..6ceb9d49274
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004-ref.html
@@ -0,0 +1,52 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid item using mix of outer/inner line names</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / [a] 50px 50px 50px 50px [b] 50px 50px [a b];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid-template-columns: subgrid [x] [b] [] [] [b];
+ grid-auto-rows: 10px;
+ grid-column: 2 / span 4;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <x style="grid-row:1; grid-column: 2 / 4"></x>
+ <x style="grid-row:2; grid-column: 2 / 5"></x>
+ <x style="grid-row:3; grid-column: 2 / 4"></x>
+ <x style="grid-row:4; grid-column: 2 / 4"></x>
+ <x style="grid-row:5; grid-column: 2 / 5"></x>
+ <x style="grid-row:6; grid-column: 2 / 4"></x>
+ <x style="grid-row:7; grid-column: 1 / 4"></x>
+ <x style="grid-row:8; grid-column: 2 / 4"></x>
+ <x style="grid-row:9; grid-column: 2 / 3"></x>
+ <x style="grid-row:10; grid-column: 2 / 3"></x>
+ <x style="grid-row:11; grid-column: 2 / 5"></x>
+ <x style="grid-row:12; grid-column: 2 / 4"></x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004.html
new file mode 100644
index 00000000000..0d2a96873da
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-004.html
@@ -0,0 +1,54 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid item using mix of outer/inner line names</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-004-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:24px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: auto / [a] 50px 50px 50px 50px [b] 50px 50px [a b];
+ padding: 20px 10px;
+}
+
+.subgrid {
+ display: grid;
+ grid-template-columns: subgrid [x] [b] [] [] [b];
+ grid-auto-rows: 10px;
+ grid-column: 2 / span 4;
+}
+
+x { background: grey; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <div class="subgrid">
+ <x style="grid-row:1; grid-column: b / b 2"></x>
+ <x style="grid-row:2; grid-column: b / b -1"></x>
+ <x style="grid-row:3; grid-column: b / b -2"></x>
+ <x style="grid-row:4; grid-column: b / span b"></x>
+ <x style="grid-row:5; grid-column: b / span b 2"></x>
+ <x style="grid-row:6; grid-column: span b / b 2"></x>
+ <x style="grid-row:7; grid-column: span b 2 / b 2"></x>
+ <x style="grid-row:8; grid-column: b -2 / b"></x>
+ <x style="grid-row:9; grid-column: b -3 / b"></x>
+ <x style="grid-row:10; grid-column: b / b"></x>
+ <x style="grid-row:11; grid-column: b / b 10"></x>
+ <x style="grid-row:12; grid-column: span b / b -2"></x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005-ref.html
new file mode 100644
index 00000000000..4c7f4b50fd1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005-ref.html
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid line name resolution</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: [a] repeat(1, [b] auto [c]) [d] repeat(3, [b] auto [c]) [d] /
+ [a] 30px [b] 30px [c] 30px [] 30px [e-start] 30px [] 30px [x] 30px [h] 30px [i] 30px [j] 30px [k];
+ grid-template-areas: ". . . e . . . . . . .";
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ grid-auto-columns: 100px;
+ grid-auto-rows: 100px;
+}
+
+.subgrid {
+ display: grid;
+ grid: auto / subgrid;
+ background: lightgrey;
+ grid-column: 2 / span 8;
+ grid-row: 2 / span 2;
+ min-width:0;
+ min-height:0;
+}
+
+.subgrid2 {
+ display: grid;
+ grid: auto / subgrid [] [] [] [b];
+ grid-column: span 10;
+}
+
+.subgrid#s1 {
+ grid-template-areas: ". e e . . . .";
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ min-width:10px;
+ min-height:20px;
+ background:silver;
+}
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid" id="s1">
+ <x style="grid-column:10 / span 4">x</x>
+</div>
+</div>
+
+<div class="grid hr">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hl" id="s2">
+ <x style="grid-column: 10 / span 4">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr" id="s2">
+ <x style="grid-column: 10 / span 4">x</x>
+</div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column:1 / 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column:10 / span 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column: 1 / -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-row:2; grid-column: 1 / -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column: span 4 / 11">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px; grid: auto / repeat(20, [a] 50px) [a] ">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2" style="grid-row:2">
+ <x style="grid-column: 10 / 11">x</x>
+ </div>
+</div>
+
+<div style="display:grid; grid: auto / repeat(10, 50px) repeat(10, [a] 50px) [a]">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: span 10; grid-row:2">
+ <x style="grid-column: 1 / 11">x</x>
+ </div>
+</div>
+
+<div style='display:grid; grid-template-areas: "a a a a a a a a a a"'>
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: 6 / span 5; grid-row:2">
+ <x style="grid-column: 1 / 6">x</x>
+ </div>
+</div>
+
+<div style='display:grid; grid-template-areas: ". . . . . . a a a a"'>
+<div style='display:grid; grid-template-areas: ". . . . . . . a a a"; grid-template-columns:subgrid; grid-column:span 10;'>
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: 6 / span 5; grid-row:2">
+ <x style="grid-column: 2 / 6">x</x>
+ </div>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005.html
new file mode 100644
index 00000000000..43bde0b37ad
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-005.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid line name resolution</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-005-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: [a] repeat(1, [b] auto [c]) [d] repeat(3, [b] auto [c]) [d] /
+ [a] 30px [b] 30px [c] 30px [] 30px [e-start] 30px [] 30px [x] 30px [h] 30px [i] 30px [j] 30px [k];
+ grid-template-areas: ". . . e . . . . . . .";
+ place-content: start;
+ border: 1px solid;
+ width: 500px;
+ grid-auto-columns: 100px;
+ grid-auto-rows: 100px;
+}
+
+.subgrid {
+ display: grid;
+ grid: auto / subgrid;
+ background: lightgrey;
+ grid-column: 2 / span 8;
+ grid-row: 2 / span 2;
+ min-width:0;
+ min-height:0;
+}
+
+.subgrid2 {
+ display: grid;
+ grid: auto / subgrid [] [] [] [b];
+ grid-column: span 10;
+}
+
+.subgrid#s1 {
+ grid-template-areas: ". e e . . . .";
+}
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+}
+i::before { content: counter(i, decimal); }
+
+x {
+ min-width:10px;
+ min-height:20px;
+ background:silver;
+}
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid" id="s1">
+ <x style="grid-column:foo / span 4">x</x>
+</div>
+</div>
+
+<div class="grid hr">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hl" id="s2">
+ <x style="grid-column: x 6 / span 4">x</x>
+</div>
+</div>
+
+<div class="grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+<div class="subgrid hr" id="s2">
+ <x style="grid-column: x 6 / span 4">x</x>
+</div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column:1 / b">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column:foo / span 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column: span bar / foo 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-row:2; grid-column: span bar / foo 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px;">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2">
+ <x style="grid-column:span 4 / foo">x</x>
+ </div>
+</div>
+
+<div style="display:grid; width:500px; grid-auto-columns: 50px; grid: auto / repeat(20, [a] 50px) [a] ">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="subgrid2" style="grid-row:2">
+ <x style="grid-column:foo / span 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid; grid: auto / repeat(10, 50px) repeat(10, [a] 50px) [a]">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: span 10; grid-row:2">
+ <x style="grid-column: span a / a 8">x</x>
+ </div>
+</div>
+
+<div style='display:grid; grid-template-areas: "a a a a a a a a a a"'>
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: 6 / span 5; grid-row:2">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+
+<div style='display:grid; grid-template-areas: ". . . . . . a a a a"'>
+<div style='display:grid; grid-template-areas: ". . . . . . . a a a"; grid-template-columns:subgrid; grid-column:span 10;'>
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-column: 6 / span 5; grid-row:2">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006-ref.html
new file mode 100644
index 00000000000..e2c2ec2085b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006-ref.html
@@ -0,0 +1,115 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid line name resolution</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+div > div { background: grey; grid-column: 2 / span 2; }
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+}
+i::before { content: counter(i, decimal); }
+
+x { background: silver; }
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-template-areas: '. a a a a';">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a];">
+ <x style="grid-column: 1 / 2">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: 1 / 2">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: 3 / 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid; grid-template-areas: '. a a a a';">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a];">
+ <x style="grid-column: 1 / 2">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: 1 / 2">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: 3 / 4">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: 2 / 3">x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006.html
new file mode 100644
index 00000000000..0aa8c80b2e2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-006.html
@@ -0,0 +1,117 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid line name resolution</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-006-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace; padding:0; margin:0;
+}
+
+div > div { background: grey; grid-column: 2 / span 2; }
+
+i {
+ grid-row: 1;
+ counter-increment: i;
+}
+i::before { content: counter(i, decimal); }
+
+x { background: silver; }
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid; grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div style="display:grid; grid:auto/subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid; grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div style="display:grid">
+<i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i><i></i>
+ <div class="hr" style="display:grid; grid:auto/subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007-ref.html
new file mode 100644
index 00000000000..2b06d9c3812
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007-ref.html
@@ -0,0 +1,134 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: line name resolution for grid-aligned abs.pos. inside subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ position: relative;
+ display: grid;
+ grid: 0.2em / repeat(10,30px);
+ grid-auto-rows: 2em;
+ border: 1px solid;
+ padding: 1px 2px;
+}
+
+div > div {
+ padding: 4px 0 1px 0;
+ border: 3px solid black;
+ background: grey;
+ margin-left: 30px;
+ width: 54px;
+}
+
+n {
+ grid-row: 1;
+ counter-increment: n;
+}
+n::before { content: counter(n, decimal); }
+
+x {
+ position: absolute;
+ left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div>
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div>
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="margin-left:0">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="width:84px">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="width:84px">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="width:174px">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="margin-left:0">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="width:84px">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="width:84px">
+ <x>x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="width:174px">
+ <x>x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007.html
new file mode 100644
index 00000000000..d70a86b6b14
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-007.html
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: line name resolution for grid-aligned abs.pos. inside subgrid</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-007-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ position: relative;
+ display: grid;
+ grid: 0.2em / repeat(10,30px);
+ grid-auto-rows: 2em;
+ border: 1px solid;
+ padding: 1px 2px;
+}
+
+div > div {
+ display: grid;
+ grid-column: 2 / span 2;
+ grid: auto / subgrid;
+ padding: 4px 33px 1px 10px;
+ border: 3px solid black;
+ background: grey;
+}
+
+n {
+ grid-row: 1;
+ counter-increment: n;
+}
+n::before { content: counter(n, decimal); }
+
+x {
+ position: absolute;
+ left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a]; grid-column:1/span 2">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a] [a] [a] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [] [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a">x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008-ref.html
new file mode 100644
index 00000000000..262fa548ec5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008-ref.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: line name resolution for grid-aligned abs.pos. inside subgrid CB</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ display: grid;
+ grid: 0.2em 1.4em / repeat(10,30px);
+ border: 1px solid;
+ padding: 0 2px;
+}
+
+div > div {
+ position: relative;
+ display: grid;
+ grid-column: 2 / span 2;
+ grid: auto / subgrid;
+ padding: 4px 0 1px 10px;
+ border: 1px solid black;
+ background: grey;
+}
+
+n {
+ grid-row: 1;
+ counter-increment: n;
+}
+n::before { content: counter(n, decimal); }
+
+x {
+ position: absolute;
+ left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div>
+ <x style="grid-column: -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div>
+ <x style="grid-column: 2">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column-end:span 5">
+ <x style="grid-column: 2">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column:2/span 5">
+ <x style="grid-column: 4">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column-end:span 6">
+ <x style="grid-column: 2 / 4">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column-end:span 3">
+ <x style="grid-column: -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column:2/span 6">
+ <x style="grid-column: 3 / 5">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-column:2/span 6">
+ <x style="grid-column: 3 / 5">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr">
+ <x style="grid-column: 3 / auto">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr">
+ <x style="grid-column: 2 / auto">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column-end:span 5">
+ <x style="grid-column: 2 / auto">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column:2/span 5">
+ <x style="grid-column: 6 / auto">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column-end:span 6">
+ <x style="grid-column: 2 / 4">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column-end:span 3">
+ <x style="grid-column: 4 / auto">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column:2/span 6">
+ <x style="grid-column: 5 / 7">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-column:2/span 6">
+ <x style="grid-column: 5 / 7">x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008.html
new file mode 100644
index 00000000000..7b959120c31
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/line-names-008.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: line name resolution for grid-aligned abs.pos. inside subgrid CB</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="line-names-008-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ display: grid;
+ grid: 0.2em 1.4em / repeat(10,30px);
+ border: 1px solid;
+ padding: 0 2px;
+}
+
+div > div {
+ position: relative;
+ display: grid;
+ grid-column: 2 / span 2;
+ grid: auto / subgrid;
+ padding: 4px 0 1px 10px;
+ border: 1px solid black;
+ background: grey;
+}
+
+n {
+ grid-row: 1;
+ counter-increment: n;
+}
+n::before { content: counter(n, decimal); }
+
+x {
+ position: absolute;
+ left:0; right:0;
+ background: silver;
+}
+
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [][a][];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(9,30px) [a] 30px">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [][a][]; grid-column-end:span 5">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(5,[a]30px) repeat(5,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a]; grid-column:2/span 5">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(4,30px) [a] 30px repeat(5,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a 2 / a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [a] [a] [] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(3,30px) [a] 30px repeat(7,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [] [] [] [] [a]; grid-column:2/span 6">
+ <x style="grid-column: a/span a">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(3,30px) [a] 30px repeat(7,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div style="grid-template-columns: subgrid [] [] [] [] [a]; grid-column:2/span 6">
+ <x style="grid-column: a/a 2">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-areas: '. a a a a';">
+ <x style="grid-column: a-end -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [][a][];">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(9,30px) [a] 30px">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [][a][]; grid-column-end:span 5">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(5,[a]30px) repeat(5,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a]; grid-column:2/span 5">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(4,30px) [a] 30px repeat(5,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a] [a]; grid-column-end:span 6">
+ <x style="grid-column: a 2 / a -1">x</x>
+ </div>
+</div>
+
+<div class="grid">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [a] [a] [] [a]; grid-column-end:span 3">
+ <x style="grid-column: a -1">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(3,30px) [a] 30px repeat(7,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [] [] [] [] [a]; grid-column:2/span 6">
+ <x style="grid-column: a/span a">x</x>
+ </div>
+</div>
+
+<div class="grid" style="grid-template-columns: repeat(3,30px) [a] 30px repeat(7,30px)">
+<n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n><n></n>
+ <div class="hr" style="grid-template-columns: subgrid [] [] [] [] [a]; grid-column:2/span 6">
+ <x style="grid-column: a/a 2">x</x>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html
new file mode 100644
index 00000000000..4f0f6f962e6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001-ref.html
@@ -0,0 +1,89 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: auto / auto;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+}
+
+.vlr {
+ writing-mode: vertical-lr;
+ grid: auto / auto;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 5;
+ background: blue;
+}
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="text-indent:10px">
+ A B
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vr">
+ <div class="subgrid hr">A B</div>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:3; height:50px; background:black"></x>
+<x style="grid-row:4; height:50px; background:pink"></x>
+<x style="grid-row:5; height:40px; background:black"></x>
+<div class="subgrid vlr">
+<div class="subgrid hl">
+ <x style="grid-row:2 / span 2; height: 100px">A B C D E F</x>
+</div>
+</div>
+</div>
+
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001.html
new file mode 100644
index 00000000000..1cf99a73e2e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-001.html
@@ -0,0 +1,89 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="orthogonal-writing-mode-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 monospace;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+}
+
+.vlr {
+ writing-mode: vertical-lr;
+ grid: auto / subgrid;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 5;
+ background: blue;
+}
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="text-indent:10px">
+ A B
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vr">
+ <div class="subgrid hr">A B</div>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid vlr">
+<div class="subgrid hl">
+ <x style="grid-row:2 / span 2; height: 100px">A B C D E F</x>
+</div>
+</div>
+</div>
+
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html
new file mode 100644
index 00000000000..7c51c028286
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002-ref.html
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 Ahem;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: auto / auto;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+ background: yellow;
+ padding: 1px 3px 5px 7px;
+ margin: 3px 11px 7px 5px;
+}
+
+.vlr {
+ writing-mode: vertical-lr;
+ grid: auto / auto;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 5;
+ background: blue;
+}
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid vrl">
+<x style="grid-column:1; height:0px"></x><x style="grid-column:2; height:16px"></x><x style="grid-column:3; height:30px"></x><x style="grid-column:4; height:52px"></x>
+<div class="subgrid hl">
+ <x style="grid-column:span 12">A _B</x>
+ <x style="width:100px; height:30px"></x>
+ <x style="background:yellow">C D_</x>
+</div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1; height:0px"></x><x style="grid-row:2; height:0px"></x><x style="grid-row:3; height:52px"></x><x style="grid-row:4; height:30px"></x>
+<div class="subgrid vlr" style="grid: auto / repeat(5, auto);">
+ <x>A _B</x>
+ <x style="width:100px; height:30px"></x>
+ <x>C D_</x>
+</div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1; height:0px"></x><x style="grid-row:2; height:0px"></x><x style="grid-row:3; height:4px"></x>
+<div class="subgrid vlr"></div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002.html
new file mode 100644
index 00000000000..20a4b0ccf37
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-002.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="orthogonal-writing-mode-002-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 Ahem;
+}
+
+.grid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(5, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / auto;
+ grid-column: 2 / span 5;
+ grid-row: 2 / span 5;
+ min-width:10px;
+ min-height:0;
+ border: 0 solid lightblue;
+ border-bottom-width: 40px;
+ background: yellow;
+ padding: 1px 3px 5px 7px;
+ margin: 3px 11px 7px 5px;
+}
+
+.vlr {
+ writing-mode: vertical-lr;
+ grid: auto / subgrid;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 5;
+ background: blue;
+}
+
+x {
+ min-width:10px;
+ min-height:0px;
+}
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid vrl">
+<x style="grid-column:1"></x><x style="grid-column:2"></x><x style="grid-column:3"></x><x style="grid-column:4"></x><x style="grid-column:5"></x><x style="grid-column:6"></x>
+<div class="subgrid hl">
+ <x style="grid-column:span 12">A _B</x>
+ <x style="width:100px; height:30px"></x>
+ <x style="background:yellow">C D_</x>
+</div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid vlr">
+ <x>A _B</x>
+ <x style="width:100px; height:30px"></x>
+ <x>C D_</x>
+</div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+<div class="subgrid vlr"></div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html
new file mode 100644
index 00000000000..3026548c68a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003-ref.html
@@ -0,0 +1,104 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 Ahem;
+}
+
+.grid {
+ display: grid;
+ grid: 2px repeat(4, auto) / 10px repeat(50, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: repeat(50, auto) / repeat(4, auto);
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 3;
+ min-width:10px;
+ min-height:0;
+ border: solid lightblue;
+ border-width: 1px 5px 3px 7px;
+ padding: 5px 7px 3px 1px;
+ margin: 7px 3px 5px 1px;
+}
+
+item { text-indent:10px; background: magenta; }
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+x:nth-child(2n+5) { background: blue; }
+x:nth-child(2n+6) { background: cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0"></x><x style="grid-row:3;height:25px"></x><x style="grid-row:4;height:0px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl">
+ <item class="hl">AB</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:13px"></x><x style="grid-row:4;height:0px"></x><x style="grid-row:5;height:23px"></x>
+ <div class="subgrid vlr">
+ <item class="hl">AB</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:25px"></x><x style="grid-row:4;height:0px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl">AB</item>
+ </div>
+ <item class="hl" style="grid-area:3/5/4/6">AB</item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:40px"></x><x style="grid-row:4;height:0px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl" style="height:27px">AB</item>
+ </div>
+ <item class="hl" style="grid-area:3/5/4/6; height:40px; width:10px"></item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:25px"></x><x style="grid-row:4;height:40px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl" style="height:12px">AB</item>
+ </div>
+ <item class="hl" style="grid-area:4/5/5/6; height:40px; width:10px"></item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:25px"></x><x style="grid-row:4;height:0px"></x><x style="grid-row:5;height:40px"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl" style="height:12px">AB</item>
+ </div>
+ <item class="hl" style="grid-area:5/5/6/6; height:40px; width:10px"></item>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003.html
new file mode 100644
index 00000000000..2cd17d628b2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-003.html
@@ -0,0 +1,106 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="orthogonal-writing-mode-003-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:12px/1 Ahem;
+}
+
+.grid {
+ display: grid;
+ grid: 2px repeat(4, auto) / 10px repeat(50, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / subgrid;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 3;
+ min-width:10px;
+ min-height:0;
+ border: solid lightblue;
+ border-width: 1px 5px 3px 7px;
+ padding: 5px 7px 3px 1px;
+ margin: 7px 3px 5px 1px;
+}
+
+item { text-indent:10px; background: magenta; }
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+x:nth-child(2n+5) { background: blue; }
+x:nth-child(2n+6) { background: cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl">
+ <item class="hl">AB</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr">
+ <item class="hl">AB</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl">AB</item>
+ </div>
+ <item class="hl" style="grid-area:3/5/4/6">AB</item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl">AB</item>
+ </div>
+ <item class="hl" style="grid-area:3/5/4/6; height:40px; width:10px"></item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl">AB</item>
+ </div>
+ <item class="hl" style="grid-area:4/5/5/6; height:40px; width:10px"></item>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item class="hl">AB</item>
+ </div>
+ <item class="hl" style="grid-area:5/5/6/6; height:40px; width:10px"></item>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html
new file mode 100644
index 00000000000..1de585bd623
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004-ref.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <style>
+html,body {
+ color:black; background-color:white; font:10px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 2px repeat(4, auto) / 10px repeat(50, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: repeat(4, auto) / repeat(50, auto);;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 3;
+ min-width:10px;
+ min-height:0;
+ border: solid lightblue;
+ border-width: 1px 5px 3px 7px;
+ padding: 5px 7px 3px 1px;
+ margin: 7px 3px 5px 1px;
+}
+
+item { background: magenta; }
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+x:nth-child(2n+5) { background: blue; }
+x:nth-child(2n+6) { background: cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:13px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:21px"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:23px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:21px"></x> <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item><item>C</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:23px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:23px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:21px"></x>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item><item>C</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:13px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:21px"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vlr" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:23px"></x><x style="grid-row:4;height:10px"></x><x style="grid-row:5;height:11px"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:23px"></x><x style="grid-row:4;height:20px"></x><x style="grid-row:5;height:21px"></x>
+ <div class="subgrid vlr" style="grid-column:2/5; grid-template-columns:10px 20px">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8; grid-template-columns:10px 20px">
+ <item>X</item><item>&#x00C9;&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1;height:2px"></x><x style="grid-row:2;height:0px"></x><x style="grid-row:3;height:43px"></x><x style="grid-row:4;height:20px"></x><x style="grid-row:5;height:21px"></x>
+ <div class="subgrid vlr" style="grid-column:2/5; grid-template-columns:10px 20px">
+ <item>X</item><item class="">&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8; grid-template-columns:30px 20px">
+ <item>X</item><item>&#x00C9;&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:8/11; grid-template-columns:30px 20px">
+ <item>XXX</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004.html
new file mode 100644
index 00000000000..4a0edd7e6d5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/orthogonal-writing-mode-004.html
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrids with different writing-mode than parent</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+ <link rel="match" href="orthogonal-writing-mode-004-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:10px/1 Ahem; padding:0; margin:0;
+}
+
+.grid {
+ display: grid;
+ grid: 2px repeat(4, auto) / 10px repeat(50, auto);
+ place-content: start;
+ border: 1px solid;
+}
+
+.subgrid {
+ display: grid;
+ grid: subgrid / subgrid;
+ background: lightgrey;
+ grid-column: 2 / span 5;
+ grid-row: 3 / span 3;
+ min-width:10px;
+ min-height:0;
+ border: solid lightblue;
+ border-width: 1px 5px 3px 7px;
+ padding: 5px 7px 3px 1px;
+ margin: 7px 3px 5px 1px;
+}
+
+item { background: magenta; }
+
+x:nth-child(2n+1) { background: silver; }
+x:nth-child(2n+2) { background: grey; }
+x:nth-child(2n+3) { background: pink; }
+x:nth-child(2n+4) { background: black; }
+x:nth-child(2n+5) { background: blue; }
+x:nth-child(2n+6) { background: cyan; }
+
+.hl { writing-mode: horizontal-tb; direction:ltr; }
+.hr { writing-mode: horizontal-tb; direction:rtl; }
+.vl { writing-mode: vertical-lr; }
+.vr { writing-mode: vertical-rl; }
+.vlr { writing-mode: vertical-lr; direction:rtl; }
+.vrl { writing-mode: vertical-rl; direction:ltr; }
+
+ </style>
+</head>
+<body>
+
+<div class="grid">
+ <x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+ <x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item><item>C</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item><item>C</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vlr" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vrl" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;&#x00C9;</item>
+ </div>
+</div>
+
+<div class="grid">
+<x style="grid-row:1"></x><x style="grid-row:2"></x><x style="grid-row:3"></x><x style="grid-row:4"></x><x style="grid-row:5"></x><x style="grid-row:6"></x>
+ <div class="subgrid vlr" style="grid-column:2/5">
+ <item>X</item><item>&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:5/8">
+ <item>X</item><item>&#x00C9;&#x00C9;</item>
+ </div>
+ <div class="subgrid vrl" style="grid-column:8/11">
+ <item>XXX</item><item>&#x00C9;</item>
+ </div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001-ref.html
new file mode 100644
index 00000000000..d264a3455a6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001-ref.html
@@ -0,0 +1,98 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>Reference: subgrid item auto block-size</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+
+body { width:600px; }
+
+.grid {
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ grid-auto-flow:dense;
+ column-gap: 40px;
+ row-gap: 0px;
+}
+
+.card {
+ background-color: #fff;
+ grid-row: auto / span 3;
+ grid-template-rows: repeat(3, auto);
+ grid-template-columns: auto;
+ display: grid;
+ row-gap: 40px;
+}
+
+
+.card .inner, .card footer {
+ padding: 10px;
+}
+
+.card .inner { background: grey; }
+
+.card h2 {
+ margin: 0;
+ color: #fff;
+ background-color: rgb(3,99,143);
+ border-bottom: 4px solid rgb(24,154,153);
+}
+
+.card footer {
+ background-color: rgb(182,222,211);
+}
+
+* { box-sizing: border-box; }
+
+item {
+ border: 1px solid;
+ visibility: visible;
+}
+
+.hidden { visibility: hidden; }
+</style>
+<body>
+
+<div class="grid">
+
+ <div class="card">
+ <h2><span class="hidden">My title</span></h2>
+ <div class="inner">
+ <p>The contents.<span class="hidden"> I have a lot of content, more content than the other ones.</span></p>
+ </div>
+ <footer>Footer contents</footer>
+ </div>
+
+ <div class="card hidden">
+ <h2 style="grid-area:1/1"><span>My title</span></h2>
+ <div class="inner" style="grid-area:2/1">
+ <p>The contents. I have a lot of content, more content than the other ones.</p>
+ </div>
+ <footer style="grid-area:3/1">Footer contents</footer>
+
+ <item style="grid-area:1/1">1</item>
+ <item style="grid-area:2/1">2</item>
+ <item style="grid-area:3/1">3</item>
+
+ </div>
+
+ <div class="card">
+ <h2>My title</h2>
+ <div class="inner">
+ <p>The contents. I have a lot of content, more content than the other ones.</p>
+ </div>
+ <footer><span class="hidden">Footer contents</span></footer>
+ </div>
+
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001.html b/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001.html
new file mode 100644
index 00000000000..29e82197831
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/subgrid/subgrid-item-block-size-001.html
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+ <meta charset="utf-8">
+ <title>CSS Grid Test: subgrid item auto block-size</title>
+ <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+ <link rel="help" href="https://drafts.csswg.org/css-grid-2">
+ <link rel="match" href="subgrid-item-block-size-001-ref.html">
+ <style>
+html,body {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+}
+
+
+body { width:600px; }
+
+.grid {
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ grid-auto-flow:dense;
+ gap: 40px;
+}
+
+.card {
+ background-color: #fff;
+ grid-row: auto / span 3;
+ grid-template-rows: subgrid;
+ grid-template-columns: auto;
+ display: grid;
+}
+
+
+.card .inner, .card footer {
+ padding: 10px;
+}
+
+.card .inner { background: grey; }
+
+.card h2 {
+ margin: 0;
+ color: #fff;
+ background-color: rgb(3,99,143);
+ border-bottom: 4px solid rgb(24,154,153);
+}
+
+.card footer {
+ background-color: rgb(182,222,211);
+}
+
+* { box-sizing: border-box; }
+
+item {
+ border: 1px solid;
+ grid-column: 2;
+}
+
+</style>
+<body>
+
+<div class="grid">
+
+ <div class="card">
+ <h2></h2>
+ <div class="inner">
+ <p>The contents.</p>
+ </div>
+ <footer>Footer contents</footer>
+ </div>
+
+ <item>1</item>
+ <item>2</item>
+ <item>3</item>
+
+ <div class="card">
+ <h2>My title</h2>
+ <div class="inner">
+ <p>The contents. I have a lot of content, more content than the other ones.</p>
+ </div>
+ <footer></footer>
+ </div>
+
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-invalid.html b/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-invalid.html
index 129d403ed6b..cf8aa251c38 100644
--- a/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-invalid.html
+++ b/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-invalid.html
@@ -45,6 +45,13 @@ test_invalid_value("clip-path", "ellipse(-50px 60px at 70% 80%)");
test_invalid_value("clip-path", "polygon(1%)");
test_invalid_value("clip-path", "unknown-box");
+
+test_invalid_value("clip-path", 'path(abc, "m 20 0 h -100 z")');
+test_invalid_value("clip-path", 'path(nonzero)');
+test_invalid_value("clip-path", 'path(evenodd, "")');
+test_invalid_value("clip-path", 'path("m 20 0 h -100", nonzero)');
+
+
</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-valid.html b/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-valid.html
index e734b9027f6..895cdfacac6 100644
--- a/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-valid.html
+++ b/tests/wpt/web-platform-tests/css/css-masking/parsing/clip-path-valid.html
@@ -42,6 +42,14 @@ test_valid_value("clip-path", "polygon(1% 2%)");
test_valid_value("clip-path", "polygon(nonzero, 1px 2px, 3em 4em)", "polygon(1px 2px, 3em 4em)");
test_valid_value("clip-path", "polygon(evenodd, 1px 2px, 3em 4em, 5pt 6%)");
+// New supported shape in [css-shapes-2]
+// https://drafts.csswg.org/css-shapes-2/#supported-basic-shapes
+test_valid_value("clip-path", 'path("m 20 0 h -100")');
+test_valid_value("clip-path", 'path(evenodd, "M 20 20 h 60 v 60 h -60 Z M 30 30 h 40 v 40 h -40 Z")');
+test_valid_value("clip-path",
+ 'path(nonzero, "M20,20h60 v60 h-60z M30,30 h40 v40 h-40z")',
+ 'path("M 20 20 h 60 v 60 h -60 Z M 30 30 h 40 v 40 h -40 Z")');
+
// <geometry-box>
test_valid_value("clip-path", "border-box");
test_valid_value("clip-path", "padding-box");
@@ -57,7 +65,7 @@ test_valid_value("clip-path", "circle(7% at 8% 9%) border-box");
// <geometry-box> basic-shape>
test_valid_value("clip-path", "border-box circle(7% at 8% 9%)");
-// <clip-source>
+// <clip-source>
test_valid_value("clip-path", "url(https://example.com/)", ["url(https://example.com/)", "url(\"https://example.com/\")"]);
test_valid_value("clip-path", "url(\"https://example.com/\")", ["url(https://example.com/)", "url(\"https://example.com/\")"]);
</script>
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-001.html b/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-001.html
new file mode 100644
index 00000000000..c9999951ab2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-001.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<title>'text-orientation: upright' forces text to strong LTR in vertical typographic modes</title>
+<link rel=help href="https://www.w3.org/TR/css-writing-modes-3/#text-orientation">
+<link rel=match href="reference/direction-upright-001.html">
+<meta charset=utf-8>
+<style>
+ body > div {
+ border: solid silver;
+ float: left;
+ margin: 1em;
+ text-align: right;
+ font: 20px/1 sans-serif;
+ }
+ span { text-orientation: upright; }
+ hr { clear: both; }
+</style>
+
+<p>Test passes if both rows of boxes are identical (order, orientation, and arrangement of contents).
+
+<!-- test -->
+
+<div dir=rtl style="writing-mode: vertical-rl">
+ א ב <span>ג ד</span> <span>ה ו</span> ז<br>
+ ١ ٢ <span>٣ ٤</span> <span>٥ ٦</span> ٧
+</div>
+<div dir=rtl style="writing-mode: vertical-lr">
+ א ב <span>ג ד</span> <span>ה ו</span> ז<br>
+ ١ ٢ <span>٣ ٤</span> <span>٥ ٦</span> ٧
+</div>
+
+<!-- control -->
+
+<div dir=rtl>
+ א ב <span>ג ד</span> <span>ה ו</span> ז<br>
+ ١ ٢ <span>٣ ٤</span> <span>٥ ٦</span> ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ א ב <span>ג ד</span> <span>ה ו</span> ז<br>
+ ١ ٢ <span>٣ ٤</span> <span>٥ ٦</span> ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ א ב <span>ג ד</span> <span>ה ו</span> ז<br>
+ ١ ٢ <span>٣ ٤</span> <span>٥ ٦</span> ٧
+</div>
+
+<hr>
+
+<!-- reference -->
+
+<div style="writing-mode: vertical-rl">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+<div style="writing-mode: vertical-lr">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+
+<div dir=rtl> א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-002.html b/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-002.html
new file mode 100644
index 00000000000..daa76c8ea61
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/direction-upright-002.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<title>'text-orientation: upright' forces used 'direction' to LTR in vertical typographic modes</title>
+<link rel=help href="https://www.w3.org/TR/css-writing-modes-3/#text-orientation">
+<link rel=help href="https://www.w3.org/TR/css-flexbox-1/#flex-direction-property">
+<link rel=help href="https://www.w3.org/TR/css-grid-1/#grid-auto-flow-property">
+<link rel=help href="https://www.w3.org/TR/css-ruby-1/#bidi">
+<link rel=match href="reference/direction-upright-002.html">
+
+<style>
+ body > div {
+ border: solid silver;
+ float: left;
+ margin: 1em;
+ border-inline-start-color: orange;
+ border-block-start-color: aqua;
+ border-inline-end-color: lime;
+ border-block-end-color: yellow;
+ }
+ colgroup:first-child { background: fuchsia; }
+ col:last-child { background: purple; }
+ .flex { display: flex; }
+ .grid { grid-template-columns: auto auto }
+ hr { clear: both }
+</style>
+
+<p>Test passes if both rows of boxes are identical (coloring, order, orientation, and arrangement of contents).
+
+<!-- test -->
+
+<div dir=rtl style="writing-mode: vertical-rl; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: vertical-lr; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<!-- control -->
+
+<div dir=rtl style="text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-rl; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-lr; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<hr>
+
+<!-- reference -->
+
+<div style="writing-mode: vertical-rl; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div style="writing-mode: vertical-lr; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<div dir=rtl>
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div> \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-001.html b/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-001.html
new file mode 100644
index 00000000000..b8768ba7724
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-001.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<title>Reftest Reference</title>
+<meta charset=utf-8>
+<style>
+ body > div {
+ border: solid silver;
+ float: left;
+ margin: 1em;
+ text-align: right;
+ font: 20px/1 sans-serif;
+ }
+ span { text-orientation: upright; }
+ hr { clear: both; }
+</style>
+
+<p>Test passes if both rows of boxes are identical (order, orientation, and arrangement of contents).
+
+
+<div style="writing-mode: vertical-rl">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+<div style="writing-mode: vertical-lr">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+
+<div dir=rtl> א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+
+
+<hr>
+
+
+<div style="writing-mode: vertical-rl">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+<div style="writing-mode: vertical-lr">
+<bdo dir=ltr>
+ ז <span>ג ד</span> <span>ה ו</span> ב א<br>
+٧ <span>٣ ٤</span> <span>٥ ٦</span> ٢ ١
+</bdo>
+</div>
+
+<div dir=rtl> א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ א ב ג ד ה ו ז<br>
+ ١ ٢ ٣ ٤ ٥ ٦ ٧
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-002.html b/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-002.html
new file mode 100644
index 00000000000..eac7ca9af92
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/reference/direction-upright-002.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html>
+<title>Reftest Reference</title>
+
+<style>
+ body > div {
+ border: solid silver;
+ float: left;
+ margin: 1em;
+ border-inline-start-color: orange;
+ border-block-start-color: aqua;
+ border-inline-end-color: lime;
+ border-block-end-color: yellow;
+ }
+ colgroup:first-child { background: fuchsia; }
+ col:last-child { background: purple; }
+ .flex { display: flex; }
+ .grid { grid-template-columns: auto auto }
+ hr { clear: both }
+</style>
+
+<p>Test passes if both rows of boxes are identical (coloring, order, orientation, and arrangement of contents).
+
+<div style="writing-mode: vertical-rl; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div style="writing-mode: vertical-lr; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<div dir=rtl>
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<hr>
+
+<div style="writing-mode: vertical-rl; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div style="writing-mode: vertical-lr; text-orientation: upright">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+
+<div dir=rtl>
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-rl">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
+<div dir=rtl style="writing-mode: sideways-lr">
+ <table>
+ <colgroup></colgroup>
+ <colgroup><col><col></colgroup>
+ <tr><td>A<td>B<td>C
+ </table>
+ <div class=flex>A <span>B</span></div>
+ <div class=grid>A <span>B</span></div>
+ <div>A <ruby>B<rt>b</rt> C<rt>c</rt></ruby><ruby>D<rt>d</rt> E<rt>e</rt></ruby></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/cssom-view/offsetTopLeft-border-box.html b/tests/wpt/web-platform-tests/css/cssom-view/offsetTopLeft-border-box.html
new file mode 100644
index 00000000000..8cabf6478f7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/cssom-view/offsetTopLeft-border-box.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/cssom-view/#extensions-to-the-htmlelement-interface">
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+
+.container {
+ position: relative;
+ font: 20px/1 Ahem;
+ width: 150px;
+ height: 100px;
+ padding: 2px 10px;
+ border-width: 3px 6px;
+ border-style: solid;
+ box-sizing: border-box;
+}
+
+.target { background: grey; }
+.hl { writing-mode:horizontal-tb; }
+.vlr { writing-mode:vertical-lr; }
+</style>
+<div id=tests>
+<div class="container hl">
+ <span class="target">x</span>
+</div>
+<div class="container vlr">
+ <span class="target">x</span>
+</div>
+<div class="container hl">
+ <div class="target">x</div>
+</div>
+<div class="container vlr">
+ <div class="target">x</div>
+</div>
+</div>
+<script>
+setup({explicit_done: true});
+onload = () => {
+ // Clone the above tests for the following 'display' types:
+ let display = ['inline-block', 'grid', 'inline-grid', 'flex', 'inline-flex', 'flow-root' ];
+ let tests = document.querySelector('#tests');
+ display.forEach((display) => {
+ let t = tests.cloneNode(true);
+ [...t.children].forEach((child) => {
+ child.setAttribute("style", "display:"+display);
+ });
+ document.body.appendChild(t);
+ });
+ // Check that all of them return an offset relative the padding edge.
+ var i = 0;
+ document.querySelectorAll('.target').forEach((target) => {
+ test(() => {
+ assert_equals(target.offsetLeft, 10, 'offsetLeft');
+ assert_equals(target.offsetTop, 2, 'offsetTop');
+ }, 'container: ' + i);
+ i++;
+ });
+ done();
+};
+</script>
diff --git a/tests/wpt/web-platform-tests/html/dom/elements-forms.js b/tests/wpt/web-platform-tests/html/dom/elements-forms.js
index 051bc2087f3..448a72f5ed6 100644
--- a/tests/wpt/web-platform-tests/html/dom/elements-forms.js
+++ b/tests/wpt/web-platform-tests/html/dom/elements-forms.js
@@ -27,7 +27,6 @@ var formElements = {
accept: "string",
alt: "string",
autocomplete: {type: "string", customGetter: true},
- autofocus: "boolean",
defaultChecked: {type: "boolean", domAttrName: "checked"},
dirName: "string",
disabled: "boolean",
@@ -65,7 +64,6 @@ var formElements = {
useMap: "string",
},
button: {
- autofocus: "boolean",
disabled: "boolean",
// "formAction" has magic hard-coded in reflection.js
formAction: "url",
@@ -79,7 +77,6 @@ var formElements = {
},
select: {
autocomplete: {type: "string", customGetter: true},
- autofocus: "boolean",
disabled: "boolean",
multiple: "boolean",
name: "string",
@@ -99,7 +96,6 @@ var formElements = {
},
textarea: {
autocomplete: {type: "string", customGetter: true},
- autofocus: "boolean",
cols: {type: "limited unsigned long with fallback", defaultVal: 20},
dirName: "string",
disabled: "boolean",
diff --git a/tests/wpt/web-platform-tests/html/dom/reflection.js b/tests/wpt/web-platform-tests/html/dom/reflection.js
index 5209762660b..fca9e43f245 100644
--- a/tests/wpt/web-platform-tests/html/dom/reflection.js
+++ b/tests/wpt/web-platform-tests/html/dom/reflection.js
@@ -900,6 +900,7 @@ for (var element in elements) {
ReflectionTests.reflects({type: "enum", keywords: ["ltr", "rtl", "auto"]}, "dir", element);
ReflectionTests.reflects("string", "className", element, "class");
ReflectionTests.reflects("tokenlist", "classList", element, "class");
+ ReflectionTests.reflects("boolean", "autofocus", element);
ReflectionTests.reflects("boolean", "hidden", element);
ReflectionTests.reflects("string", "accessKey", element);
// Don't try to test the defaultVal -- it should be either 0 or -1, but the
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/autofocus/supported-elements.html b/tests/wpt/web-platform-tests/html/semantics/forms/autofocus/supported-elements.html
index 398577e7d51..761936715a3 100644
--- a/tests/wpt/web-platform-tests/html/semantics/forms/autofocus/supported-elements.html
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/autofocus/supported-elements.html
@@ -19,7 +19,7 @@ promise_test(async t => {
let w = window.open('/common/blank.html');
await waitForLoad(w);
t.add_cleanup(() => { w.close(); });
- w.document.body.innerHTML = '<span tabindex=0></span>';
+ w.document.body.innerHTML = '<span tabindex=0 autofocus></span>';
await waitUntilStableAutofocusState(w);
assert_equals(w.document.activeElement.tagName, 'SPAN');
}, 'Element with tabindex should support autofocus');
diff --git a/tests/wpt/web-platform-tests/interfaces/cookie-store.idl b/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
index f5c44b60bd0..533884fdb58 100644
--- a/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
+++ b/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
@@ -7,13 +7,13 @@
SecureContext]
interface CookieStore : EventTarget {
Promise<CookieListItem?> get(USVString name);
- Promise<CookieListItem?> get(optional CookieStoreGetOptions options);
+ Promise<CookieListItem?> get(optional CookieStoreGetOptions options = {});
Promise<CookieList> getAll(USVString name);
- Promise<CookieList> getAll(optional CookieStoreGetOptions options);
+ Promise<CookieList> getAll(optional CookieStoreGetOptions options = {});
Promise<void> set(USVString name, USVString value,
- optional CookieStoreSetOptions options);
+ optional CookieStoreSetOptions options = {});
Promise<void> set(CookieStoreSetExtraOptions options);
Promise<void> delete(USVString name);
diff --git a/tests/wpt/web-platform-tests/interfaces/geometry.idl b/tests/wpt/web-platform-tests/interfaces/geometry.idl
index d4793228dd0..ada6c0c302c 100644
--- a/tests/wpt/web-platform-tests/interfaces/geometry.idl
+++ b/tests/wpt/web-platform-tests/interfaces/geometry.idl
@@ -3,11 +3,12 @@
// (https://github.com/tidoust/reffy-reports)
// Source: Geometry Interfaces Module Level 1 (https://drafts.fxtf.org/geometry/)
-[Constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
- optional unrestricted double z = 0, optional unrestricted double w = 1),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable]
interface DOMPointReadOnly {
+ constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
+ optional unrestricted double z = 0, optional unrestricted double w = 1);
+
[NewObject] static DOMPointReadOnly fromPoint(optional DOMPointInit other = {});
readonly attribute unrestricted double x;
@@ -20,12 +21,13 @@ interface DOMPointReadOnly {
[Default] object toJSON();
};
-[Constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
- optional unrestricted double z = 0, optional unrestricted double w = 1),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable,
LegacyWindowAlias=SVGPoint]
interface DOMPoint : DOMPointReadOnly {
+ constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
+ optional unrestricted double z = 0, optional unrestricted double w = 1);
+
[NewObject] static DOMPoint fromPoint(optional DOMPointInit other = {});
inherit attribute unrestricted double x;
@@ -41,11 +43,12 @@ dictionary DOMPointInit {
unrestricted double w = 1;
};
-[Constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
- optional unrestricted double width = 0, optional unrestricted double height = 0),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable]
interface DOMRectReadOnly {
+ constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
+ optional unrestricted double width = 0, optional unrestricted double height = 0);
+
[NewObject] static DOMRectReadOnly fromRect(optional DOMRectInit other = {});
readonly attribute unrestricted double x;
@@ -60,12 +63,13 @@ interface DOMRectReadOnly {
[Default] object toJSON();
};
-[Constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
- optional unrestricted double width = 0, optional unrestricted double height = 0),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable,
LegacyWindowAlias=SVGRect]
interface DOMRect : DOMRectReadOnly {
+ constructor(optional unrestricted double x = 0, optional unrestricted double y = 0,
+ optional unrestricted double width = 0, optional unrestricted double height = 0);
+
[NewObject] static DOMRect fromRect(optional DOMRectInit other = {});
inherit attribute unrestricted double x;
@@ -87,11 +91,12 @@ interface DOMRectList {
getter DOMRect? item(unsigned long index);
};
-[Constructor(optional DOMPointInit p1 = {}, optional DOMPointInit p2 = {},
- optional DOMPointInit p3 = {}, optional DOMPointInit p4 = {}),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable]
interface DOMQuad {
+ constructor(optional DOMPointInit p1 = {}, optional DOMPointInit p2 = {},
+ optional DOMPointInit p3 = {}, optional DOMPointInit p4 = {});
+
[NewObject] static DOMQuad fromRect(optional DOMRectInit other = {});
[NewObject] static DOMQuad fromQuad(optional DOMQuadInit other = {});
@@ -111,10 +116,11 @@ dictionary DOMQuadInit {
DOMPointInit p4;
};
-[Constructor(optional (DOMString or sequence<unrestricted double>) init),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable]
interface DOMMatrixReadOnly {
+ constructor(optional (DOMString or sequence<unrestricted double>) init);
+
[NewObject] static DOMMatrixReadOnly fromMatrix(optional DOMMatrixInit other = {});
[NewObject] static DOMMatrixReadOnly fromFloat32Array(Float32Array array32);
[NewObject] static DOMMatrixReadOnly fromFloat64Array(Float64Array array64);
@@ -187,11 +193,12 @@ interface DOMMatrixReadOnly {
[Default] object toJSON();
};
-[Constructor(optional (DOMString or sequence<unrestricted double>) init),
- Exposed=(Window,Worker),
+[Exposed=(Window,Worker),
Serializable,
LegacyWindowAlias=(SVGMatrix,WebKitCSSMatrix)]
interface DOMMatrix : DOMMatrixReadOnly {
+ constructor(optional (DOMString or sequence<unrestricted double>) init);
+
[NewObject] static DOMMatrix fromMatrix(optional DOMMatrixInit other = {});
[NewObject] static DOMMatrix fromFloat32Array(Float32Array array32);
[NewObject] static DOMMatrix fromFloat64Array(Float64Array array64);
diff --git a/tests/wpt/web-platform-tests/interfaces/pointerevents.idl b/tests/wpt/web-platform-tests/interfaces/pointerevents.idl
index 40364530d89..85a25aa444e 100644
--- a/tests/wpt/web-platform-tests/interfaces/pointerevents.idl
+++ b/tests/wpt/web-platform-tests/interfaces/pointerevents.idl
@@ -16,8 +16,9 @@ dictionary PointerEventInit : MouseEventInit {
boolean isPrimary = false;
};
-[Constructor(DOMString type, optional PointerEventInit eventInitDict = {}), Exposed=Window]
+[Exposed=Window]
interface PointerEvent : MouseEvent {
+ constructor(DOMString type, optional PointerEventInit eventInitDict = {});
readonly attribute long pointerId;
readonly attribute double width;
readonly attribute double height;
diff --git a/tests/wpt/web-platform-tests/interfaces/reporting.idl b/tests/wpt/web-platform-tests/interfaces/reporting.idl
index ef20b984469..797922af064 100644
--- a/tests/wpt/web-platform-tests/interfaces/reporting.idl
+++ b/tests/wpt/web-platform-tests/interfaces/reporting.idl
@@ -12,8 +12,8 @@ interface Report {
readonly attribute ReportBody? body;
};
-[Constructor(ReportingObserverCallback callback, optional ReportingObserverOptions options)]
interface ReportingObserver {
+ constructor(ReportingObserverCallback callback, optional ReportingObserverOptions options = {});
void observe();
void disconnect();
ReportList takeRecords();
diff --git a/tests/wpt/web-platform-tests/interfaces/web-animations.idl b/tests/wpt/web-platform-tests/interfaces/web-animations.idl
index 72ac87f3e33..82681e588b7 100644
--- a/tests/wpt/web-platform-tests/interfaces/web-animations.idl
+++ b/tests/wpt/web-platform-tests/interfaces/web-animations.idl
@@ -97,7 +97,6 @@ dictionary ComputedEffectTiming : EffectTiming {
Constructor(KeyframeEffect source)]
interface KeyframeEffect : AnimationEffect {
attribute (Element or CSSPseudoElement)? target;
- attribute IterationCompositeOperation iterationComposite;
attribute CompositeOperation composite;
sequence<object> getKeyframes();
void setKeyframes(object? keyframes);
@@ -123,12 +122,9 @@ dictionary BaseKeyframe {
};
dictionary KeyframeEffectOptions : EffectTiming {
- IterationCompositeOperation iterationComposite = "replace";
CompositeOperation composite = "replace";
};
-enum IterationCompositeOperation { "replace", "accumulate" };
-
enum CompositeOperation { "replace", "add", "accumulate" };
enum CompositeOperationOrAuto { "replace", "add", "accumulate", "auto" };
diff --git a/tests/wpt/web-platform-tests/interfaces/webmidi.idl b/tests/wpt/web-platform-tests/interfaces/webmidi.idl
index 0dfcb7771a8..aa3b1ac21c8 100644
--- a/tests/wpt/web-platform-tests/interfaces/webmidi.idl
+++ b/tests/wpt/web-platform-tests/interfaces/webmidi.idl
@@ -4,7 +4,8 @@
// Source: Web MIDI API (http://webaudio.github.io/web-midi-api/)
partial interface Navigator {
- [SecureContext] Promise <MIDIAccess> requestMIDIAccess(optional MIDIOptions options = {});
+ [SecureContext]
+ Promise <MIDIAccess> requestMIDIAccess(optional MIDIOptions options = {});
};
dictionary MIDIOptions {
@@ -65,8 +66,9 @@ enum MIDIPortConnectionState {
"pending",
};
-[SecureContext, Exposed=Window, Constructor(DOMString type, optional MIDIMessageEventInit eventInitDict = {})]
+[SecureContext, Exposed=Window]
interface MIDIMessageEvent : Event {
+ constructor(DOMString type, optional MIDIMessageEventInit eventInitDict = {});
readonly attribute Uint8Array data;
};
@@ -74,8 +76,9 @@ dictionary MIDIMessageEventInit : EventInit {
Uint8Array data;
};
-[SecureContext, Exposed=Window, Constructor(DOMString type, optional MIDIConnectionEventInit eventInitDict = {})]
+[SecureContext, Exposed=Window]
interface MIDIConnectionEvent : Event {
+ constructor(DOMString type, optional MIDIConnectionEventInit eventInitDict = {});
readonly attribute MIDIPort port;
};
diff --git a/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl b/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl
index 510538decc5..ab437ce0ee1 100644
--- a/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl
+++ b/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl
@@ -22,7 +22,7 @@ enum RTCStatsType {
"local-candidate",
"remote-candidate",
"certificate",
-"stunserverconnection"
+"ice-server"
};
dictionary RTCRtpStreamStats : RTCStats {
@@ -61,6 +61,9 @@ dictionary RTCReceivedRtpStreamStats : RTCRtpStreamStats {
double burstDiscardRate;
double gapLossRate;
double gapDiscardRate;
+ unsigned long framesDropped;
+ unsigned long partialFramesLost;
+ unsigned long fullFramesLost;
};
dictionary RTCInboundRtpStreamStats : RTCReceivedRtpStreamStats {
@@ -100,9 +103,6 @@ dictionary RTCInboundRtpStreamStats : RTCReceivedRtpStreamStats {
double totalAudioEnergy;
double totalSamplesDuration;
unsigned long framesReceived;
- unsigned long framesDropped;
- unsigned long partialFramesLost;
- unsigned long fullFramesLost;
DOMString decoderImplementation;
};
@@ -114,10 +114,7 @@ dictionary RTCRemoteInboundRtpStreamStats : RTCReceivedRtpStreamStats {
dictionary RTCSentRtpStreamStats : RTCRtpStreamStats {
unsigned long packetsSent;
- unsigned long packetsDiscardedOnSend;
- unsigned long fecPacketsSent;
unsigned long long bytesSent;
- unsigned long long bytesDiscardedOnSend;
};
dictionary RTCOutboundRtpStreamStats : RTCSentRtpStreamStats {
@@ -126,6 +123,9 @@ dictionary RTCOutboundRtpStreamStats : RTCSentRtpStreamStats {
DOMString senderId;
DOMString remoteId;
DOMHighResTimeStamp lastPacketSentTimestamp;
+ unsigned long packetsDiscardedOnSend;
+ unsigned long long bytesDiscardedOnSend;
+ unsigned long fecPacketsSent;
unsigned long long retransmittedPacketsSent;
unsigned long long retransmittedBytesSent;
double targetBitrate;
@@ -137,6 +137,7 @@ dictionary RTCOutboundRtpStreamStats : RTCSentRtpStreamStats {
unsigned long hugeFramesSent;
unsigned long framesEncoded;
unsigned long keyFramesEncoded;
+ unsigned long framesDiscardedOnSend;
unsigned long long qpSum;
unsigned long long totalSamplesSent;
boolean voiceActivityFlag;
@@ -319,6 +320,8 @@ dictionary RTCIceCandidatePairStats : RTCStats {
unsigned long long retransmissionsSent;
unsigned long long consentRequestsSent;
DOMHighResTimeStamp consentExpiredTimestamp;
+ unsigned long packetsDiscardedOnSend;
+ unsigned long long bytesDiscardedOnSend;
};
enum RTCStatsIceCandidatePairState {
@@ -336,7 +339,7 @@ dictionary RTCCertificateStats : RTCStats {
DOMString issuerCertificateId;
};
-dictionary RTCStunServerConnectionStats : RTCStats {
+dictionary RTCIceServerStats : RTCStats {
DOMString url;
long port;
DOMString protocol;
diff --git a/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html b/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html
new file mode 100644
index 00000000000..f0b5bdd9f04
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8"/>
+ <title>Legacy menclose radical notation (reference)</title>
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+ <style>
+ math, math * {
+ font: 25px Ahem;
+ }
+ </style>
+ </head>
+ <body>
+ <math>
+ <menclose>
+ <mn>123</mn>
+ </menclose>
+ </math>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html b/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html
new file mode 100644
index 00000000000..d7f0627059a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mathml/presentation-markup/menclose/legacy-menclose-radical-notation.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8"/>
+ <title>Legacy menclose radical notation</title>
+ <link rel="help" href="https://www.w3.org/TR/MathML3/chapter3.html#presm.menclose">
+ <link rel="help" href="https://mathml-refresh.github.io/mathml-core/#enclose-expression-inside-notation-menclose">
+ <meta name="assert" content="Verify that the legacy menclose radical notation is not supported.">
+ <link rel="match" href="legacy-menclose-radical-notation-ref.html">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+ <style>
+ math, math * {
+ font: 25px Ahem;
+ }
+ </style>
+ </head>
+ <body>
+ <math>
+ <menclose notation="radical">
+ <mn>123</mn>
+ </menclose>
+ </math>
+
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_menclose");</script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html b/tests/wpt/web-platform-tests/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html
new file mode 100644
index 00000000000..0de9a90eed9
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mathml/presentation-markup/mrow/legacy-mstyle-attributes.html
@@ -0,0 +1,163 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Legacy mstyle attributes</title>
+<link rel="help" href="https://www.w3.org/TR/MathML3/chapter3.html#presm.mstyle">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#style-change-mstyle">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#space-mspace">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#fractions-mfrac">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#operator-fence-separator-or-accent-mo">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#string-literal-ms">
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#enclose-expression-inside-notation-menclose">
+<meta name="assert" content="Legacy mstyle attributes are ignored">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/mathml/support/feature-detection.js"></script>
+<script src="/mathml/support/layout-comparison.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+ window.addEventListener("load", runTests);
+ function runTests()
+ {
+ Array.from(document.getElementsByClassName("TestContainer")).forEach(container => {
+ const tag = container.id;
+ test(function() {
+ assert_true(MathMLFeatureDetection[`has_${tag}`](), `${tag} is supported`);
+ const epsilon = 1;
+ const math = container.getElementsByTagName("math");
+ compareLayout(math[0], math[1], epsilon);
+ }, `Legacy mstyle attributes do not apply to ${tag}`);
+ });
+ done();
+ }
+</script>
+</head>
+<body>
+ <div id="log"></div>
+ <!-- Note: mpadded attributes are not tested since MathML3 did not allow to
+ set them from mstyle. Also, it is not clear whether munderover's
+ accent/accentunder could be applied from mstyle, given that the former
+ clashes with mo@accent. Other legacy mstyle attributes not in MathML
+ Core or without visual effect are not tested.
+ -->
+ <p class="TestContainer" id="mspace">
+ <math>
+ <mstyle width="50px" height="50px" depth="50px">
+ <mspace style="background: lightblue"></mspace>
+ </mstyle>
+ </math>
+ <math>
+ <mstyle>
+ <mspace style="background: lightblue"></mspace>
+ </mstyle>
+ </math>
+ </p>
+ <p class="TestContainer" id="mfrac">
+ <math>
+ <mstyle linethickness="50px">
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ </mstyle>
+ </math>
+ <math>
+ <mstyle>
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ </mstyle>
+ </math>
+ </p>
+ <p class="TestContainer" id="mo">
+ <math displaystyle="true">
+ <mstyle lspace="50px" rspace="50px">
+ <mn>1</mn>
+ <mo>A</mo>
+ <mn>2</mn>
+ </mstyle>
+ <mstyle movablelimits="false" largeop="false">
+ <munder>
+ <mo>∑</mo>
+ <mn>3</mn>
+ </munder>
+ </mstyle>
+ <mstyle accent="false">
+ <mover>
+ <mn>4</mn>
+ <mo>⇀</mo>
+ </mover>
+ </mstyle>
+ <mstyle stretchy="false" symmetric="false" maxsize="20px">
+ <mrow>
+ <mo>|</mo>
+ <mspace height="100px"></mspace>
+ </mrow>
+ </mstyle>
+ <mstyle minsize="100px">
+ <mrow>
+ <mo>|</mo>
+ <mn>4</mn>
+ </mrow>
+ </mstyle>
+ </math>
+ <math displaystyle="true">
+ <mstyle>
+ <mn>1</mn>
+ <mo>A</mo>
+ <mn>2</mn>
+ </mstyle>
+ <mstyle>
+ <munder>
+ <mo>∑</mo>
+ <mn>3</mn>
+ </munder>
+ </mstyle>
+ <mstyle>
+ <mover>
+ <mn>4</mn>
+ <mo>⇀</mo>
+ </mover>
+ </mstyle>
+ <mstyle>
+ <mrow>
+ <mo>|</mo>
+ <mspace height="100px"></mspace>
+ </mrow>
+ </mstyle>
+ <mstyle>
+ <mrow>
+ <mo>|</mo>
+ <mn>4</mn>
+ </mrow>
+ </mstyle>
+ </math>
+ </p>
+ <p class="TestContainer" id="menclose">
+ <math>
+ <mstyle notation="box">
+ <mn>1</mn>
+ </mstyle>
+ </math>
+ <math>
+ <mstyle>
+ <mn>1</mn>
+ </mstyle>
+ </math>
+ </p>
+ <p class="TestContainer" id="ms">
+ <math>
+ <mstyle lquote="AAAA" rquote="BBBB">
+ <ms>1</ms>
+ </mstyle>
+ </math>
+ <math>
+ <mstyle>
+ <ms>1</ms>
+ </mstyle>
+ </math>
+ </p>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/attribute-mapping-001.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/attribute-mapping-001.html
index c0c91dc23d1..e7c6391ebad 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/attribute-mapping-001.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/attribute-mapping-001.html
@@ -8,6 +8,7 @@
<meta name="assert" content="Verify that dir, mathcolor, mathbackground and mathsize are mapped to CSS but that deprecated MathML3 attributes are not.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
+<script src="/mathml/support/feature-detection.js"></script>
<script src="/mathml/support/mathml-fragments.js"></script>
<style>
#container {
@@ -72,6 +73,7 @@
}, `mathsize on the ${tag} element is mapped to CSS font-size`);
test(function() {
+ assert_true(MathMLFeatureDetection.has_mathsize(), "Superseding attributes are supported");
var properties = ["background-color", "color", "fontfamily", "font-size", "font-style", "font-weight"];
var oldStyle = {};
properties.forEach(property => {
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-011.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-011.html
index 9a85a17dd0f..a73031aa3d8 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-011.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-011.html
@@ -162,5 +162,7 @@
</mstyle>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_movablelimits");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-012.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-012.html
index 150443f2527..7572361f630 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-012.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-012.html
@@ -31,5 +31,7 @@
</mstyle>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_movablelimits");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-013.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-013.html
index 30be35c0247..2ed4559908b 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-013.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-013.html
@@ -73,5 +73,7 @@
</mtable>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_movablelimits");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-014.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-014.html
index d54a8043788..1e70cb66f3f 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-014.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-014.html
@@ -48,5 +48,7 @@
</mstyle>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_mfrac");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-015.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-015.html
index df25171dbd6..a288aac8196 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-015.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/displaystyle-015.html
@@ -76,5 +76,8 @@
</munderover>
</mstyle>
</math>
+
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_movablelimits");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-css-keywords.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-css-keywords.html
index 9b3852d0b37..6390ebfabaf 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-css-keywords.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-css-keywords.html
@@ -7,6 +7,7 @@
<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#legacy-mathml-style-attributes">
<meta name="assert" content="Verify that CSS font-size keywords are invalid for the mathsize attribute.">
<link rel="match" href="mathsize-attribute-css-keywords-ref.html">
+ <script src="/mathml/support/feature-detection.js"></script>
</head>
<body>
<p>Test passes if you see ten "A" of equal size:</p>
@@ -22,5 +23,7 @@
<mtext mathsize="larger">A</mtext>
<mtext mathsize="smaller">A</mtext>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_mathsize");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-legacy-values.html b/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-legacy-values.html
index 745b1033718..abddf52590c 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-legacy-values.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/css-styling/mathsize-attribute-legacy-values.html
@@ -7,6 +7,7 @@
<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#legacy-mathml-style-attributes">
<meta name="assert" content="Verify that legacy values for mathsize have no effect.">
<link rel="match" href="mathsize-attribute-legacy-values-ref.html">
+ <script src="/mathml/support/feature-detection.js"></script>
</head>
<body>
<p>Test passes if you see four "A" of equal size:</p>
@@ -16,5 +17,7 @@
<mtext mathsize="medium">A</mtext>
<mtext mathsize="big">A</mtext>
</math>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_mathsize");</script>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/clipboard-event-handlers.tentative.html b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/clipboard-event-handlers.tentative.html
index 57ababb4a91..82fda880887 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/clipboard-event-handlers.tentative.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/clipboard-event-handlers.tentative.html
@@ -24,23 +24,22 @@
const EVENTS = ["copy", "cut", "paste"];
const el = document.querySelector("math");
- function addEventListenerTest(name) {
+ function dispatchEventTest(name) {
+ const mathEl = document.createElementNS(
+ "http://www.w3.org/1998/Math/MathML",
+ "math"
+ );
async_test(test => {
- el.addEventListener(
- name,
- test.step_func_done(e => {
- assert_true(
- true,
- "MathML Elements should be able to receive ${name} events"
- );
- })
- );
+ mathEl[`on${name}`] = test.step_func_done(e => {
+ assert_equals(e.currentTarget, mathEl,
+ "The event must be fired at the <math> element");
+ });
const event = new ClipboardEvent(name, {
bubbles: true,
cancellable: true
});
- el.dispatchEvent(event);
- }, `math.addEventListener for ${name}`);
+ mathEl.dispatchEvent(event);
+ }, `${name}: dispatching an Event at a <math> element must trigger element.on${name}`);
}
function evaluatedHandlerTest(name) {
@@ -115,7 +114,7 @@
}
EVENTS.forEach(name => {
- addEventListenerTest(name);
+ dispatchEventTest(name);
evaluatedHandlerTest(name);
});
</script>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2-ref.html b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2-ref.html
new file mode 100644
index 00000000000..7864c040991
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8"/>
+<title>display attribute VS legacy mode attribute (reference)</title>
+</head>
+<body>
+ <p>Test passes if you see four green squares, the last one
+ centered and the others left-aligned.</p>
+ <p>
+ <math>
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math>
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math display="inline">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math display="block">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2.html b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2.html
new file mode 100644
index 00000000000..d1c68e57c6e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/display-2.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8"/>
+<title>display attribute VS legacy mode attribute</title>
+<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#the-top-level-math-element">
+<link rel="help" href="https://www.w3.org/TR/MathML3/chapter2.html#id.2.2.2">
+<link rel="match" href="display-2-ref.html"/>
+<meta name="assert" content="Verify that the legacy mode attribute has no effect.">
+</head>
+<body>
+ <p>Test passes if you see four green squares, the last one
+ centered and the others left-aligned.</p>
+ <p>
+ <math mode="inline">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math mode="display">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math display="inline" mode="display">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <p>
+ <math display="block" mode="inline">
+ <mspace width="100px" height="100px" style="background: green"></mspace>
+ </math>
+ </p>
+ <script src="/mathml/support/feature-detection.js"></script>
+ <script>MathMLFeatureDetection.ensure_for_match_reftest("has_mspace");</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/math-global-event-handlers.tentative.html b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/math-global-event-handlers.tentative.html
index b5b9c75dac1..e96feeaf096 100644
--- a/tests/wpt/web-platform-tests/mathml/relations/html5-tree/math-global-event-handlers.tentative.html
+++ b/tests/wpt/web-platform-tests/mathml/relations/html5-tree/math-global-event-handlers.tentative.html
@@ -124,18 +124,18 @@
assert_equals(el[name], null, `The ${name} property must be null (remove attribute)`);
}, `${name}: dynamic changes on the attribute`);
- test(() => {
+ async_test(t => {
const element = document.createElementNS(
"http://www.w3.org/1998/Math/MathML",
"math"
);
- element[name] = e => {
+ element[name] = t.step_func_done(e => {
assert_equals(
e.currentTarget,
element,
"The event must be fired at the <math> element"
);
- };
+ });
element.dispatchEvent(new Event(withoutOn));
}, `${name}: dispatching an Event at a <math> element must trigger element.${name}`);
diff --git a/tests/wpt/web-platform-tests/mathml/support/feature-detection.js b/tests/wpt/web-platform-tests/mathml/support/feature-detection.js
index 69a6879f332..6f1d033b5b9 100644
--- a/tests/wpt/web-platform-tests/mathml/support/feature-detection.js
+++ b/tests/wpt/web-platform-tests/mathml/support/feature-detection.js
@@ -271,6 +271,46 @@ var MathMLFeatureDetection = {
return this._has_dir;
},
+ "has_mathsize": function() {
+ if (!this.hasOwnProperty("_has_mathsize")) {
+ document.body.insertAdjacentHTML("beforeend", "<math style='font-size: 64px !important;'>\
+<mtext mathsize='32px'></mtext>\
+</math>");
+ var math = document.body.lastElementChild;
+ this._has_mathsize =
+ window.getComputedStyle(math.firstElementChild).
+ getPropertyValue('font-size') === '32px';
+ document.body.removeChild(math);
+ }
+ return this._has_mathsize;
+ },
+
+ "has_movablelimits": function() {
+ if (!this.hasOwnProperty("_has_movablelimits")) {
+ document.body.insertAdjacentHTML("beforeend", "<math>\
+<munder>\
+ <mo style='font-size: 30px !important' movablelimits='false'>A</mo>\
+ <mspace width='100px'></mspace>\
+</munder>\
+<munder>\
+ <mo style='font-size: 30px !important' movablelimits='true'>A</mo>\
+ <mspace width='100px'></mspace>\
+</munder>\
+</math>");
+ var math = document.body.lastElementChild;
+ var munder = math.getElementsByTagName("munder");
+ // If movablelimits is supported, the <mspace> will be placed next
+ // to <mo> rather than below it, so width_delta is about the width
+ // of the <mo>.
+ var width_delta =
+ munder[1].getBoundingClientRect().width -
+ munder[0].getBoundingClientRect().width;
+ this._has_movablelimits = this.has_munder() && width_delta > 20;
+ document.body.removeChild(math);
+ }
+ return this._has_movablelimits;
+ },
+
"has_operator_spacing": function() {
// https://mathml-refresh.github.io/mathml-core/#dfn-lspace
// https://mathml-refresh.github.io/mathml-core/#layout-of-mrow
diff --git a/tests/wpt/web-platform-tests/resources/chromium/nfc-mock.js b/tests/wpt/web-platform-tests/resources/chromium/nfc-mock.js
index 01a4e70d0c9..025b1f6bfed 100644
--- a/tests/wpt/web-platform-tests/resources/chromium/nfc-mock.js
+++ b/tests/wpt/web-platform-tests/resources/chromium/nfc-mock.js
@@ -340,13 +340,17 @@ var WebNFCTest = (() => {
setReadingMessage(message, compatibility = 'nfc-forum') {
this.reading_messages_.push({message: message,
compatibility: toMojoNDEFCompatibility(compatibility)});
+ // Ignore reading if NFCPushOptions.ignoreRead is true
+ let ignoreRead = false;
+ if(this.push_options_ && this.push_options_.ignoreRead)
+ ignoreRead = this.push_options_.ignoreRead;
// Triggers onWatch if the new message matches existing watchers
for (let watcher of this.watchers_) {
- if (matchesWatchOptions(
- message, message.compatibility, watcher.options)) {
+ if (!ignoreRead && matchesWatchOptions(
+ message, toMojoNDEFCompatibility(compatibility), watcher.options)) {
this.client_.onWatch(
[watcher.id], fake_tag_serial_number,
- toMojoNDEFMessage(message.message));
+ toMojoNDEFMessage(message));
}
}
}
diff --git a/tests/wpt/web-platform-tests/web-nfc/NFCWriter_push.https.html b/tests/wpt/web-platform-tests/web-nfc/NFCWriter_push.https.html
index dcd23307a2e..cc8c94188d5 100644
--- a/tests/wpt/web-platform-tests/web-nfc/NFCWriter_push.https.html
+++ b/tests/wpt/web-platform-tests/web-nfc/NFCWriter_push.https.html
@@ -140,6 +140,23 @@ promise_test(async t => {
}, "NFCWriter.push should fail if signal is not an AbortSignal.");
nfc_test(async (t, mockNFC) => {
+ const writer1 = new NFCWriter();
+ const writer2 = new NFCWriter();
+ const controller = new AbortController();
+ mockNFC.setPendingPushCompleted(false);
+ const p1 = writer1.push(test_text_data,
+ { signal: controller.signal, timeout: 100 });
+
+ // Even though push request is grantable,
+ // this abort should be processed synchronously.
+ controller.abort();
+ await promise_rejects(t, 'AbortError', p1);
+
+ await writer2.push(test_text_data);
+ assertNDEFMessagesEqual(test_text_data, mockNFC.pushedMessage());
+}, "Synchronously signaled abort.");
+
+nfc_test(async (t, mockNFC) => {
const writer = new NFCWriter();
mockNFC.setHWStatus(NFCHWStatus.DISABLED);
await promise_rejects(t, 'NotReadableError', writer.push(test_text_data));
@@ -288,20 +305,35 @@ nfc_test(async (t, mockNFC) => {
}, "Check that provided NFCPushOptions values are correctly converted.");
nfc_test(async (t, mockNFC) => {
- const writer1 = new NFCWriter();
- const writer2 = new NFCWriter();
+ const reader = new NFCReader();
+ const message = createMessage([createTextRecord(test_text_data)]);
const controller = new AbortController();
- mockNFC.setPendingPushCompleted(false);
- const p1 = writer1.push(test_text_data,
- { signal: controller.signal, timeout: 100 });
+ const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]);
+ const promise = readerWatcher.wait_for("reading").then(event => {
+ controller.abort();
+ assertWebNDEFMessagesEqual(event.message, new NDEFMessage(message));
+ });
- // Even though push request is grantable,
- // this abort should be processed synchronously.
- controller.abort();
- await promise_rejects(t, 'AbortError', p1);
+ reader.scan({ signal: controller.signal });
- await writer2.push(test_text_data);
+ const writer = new NFCWriter();
+ await writer.push(test_text_data, { ignoreRead: false });
+ mockNFC.setReadingMessage(message);
assertNDEFMessagesEqual(test_text_data, mockNFC.pushedMessage());
-}, "Synchronously signaled abort.");
+ await promise;
+}, "NFCWriter.push should read data when ignoreRead is false.");
+
+nfc_test(async (t, mockNFC) => {
+ const reader = new NFCReader();
+ const message = createMessage([createTextRecord(test_text_data)]);
+ // Ignore reading if NFCPushOptions.ignoreRead is true
+ reader.onreading = t.unreached_func("reading event should not be fired.");
+ reader.scan();
+
+ const writer = new NFCWriter();
+ await writer.push(test_text_data, { ignoreRead: true });
+ mockNFC.setReadingMessage(message);
+ assertNDEFMessagesEqual(test_text_data, mockNFC.pushedMessage());
+}, "NFCWriter.push should ignore reading data when ignoreRead is true.");
-</script>
+</script> \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
index 0a2d883d35b..bff3d1a595e 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
@@ -7,15 +7,13 @@ var testClose = async_test("Create Secure WebSocket - wsocket.extensions should
var wsocket = CreateWebSocket(true, false, false);
var isOpenCalled = false;
-wsocket.addEventListener('open', testOpen.step_func(function(evt) {
- assert_equals(wsocket.extensions, "", "extensions should be empty");
+wsocket.addEventListener('open', testOpen.step_func_done(function(evt) {
wsocket.close();
isOpenCalled = true;
- testOpen.done();
+ assert_equals(wsocket.extensions, "", "extensions should be empty");
}), true);
-wsocket.addEventListener('close', testClose.step_func(function(evt) {
+wsocket.addEventListener('close', testClose.step_func_done(function(evt) {
assert_true(isOpenCalled, "WebSocket connection should be closed");
assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
}), true);