From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- .../disabled-elements/disabled-checkbox-click.html | 26 + ...sabled-event-dispatch-additional.tentative.html | 74 +++ .../disabled-event-dispatch.tentative.html | 57 ++ .../disabled-elements/disabledElement.html | 44 ++ ...vent-propagate-disabled-keyboard.tentative.html | 135 +++++ .../event-propagate-disabled.tentative.html | 264 +++++++++ .../fieldset-event-propagation.tentative.html | 55 ++ ...ionally-block-rendering-on-link-media-attr.html | 27 + ...king-link-stylesheet-does-not-block-script.html | 21 + ...ocking-style-element-does-not-block-script.html | 21 + ...atch-media-does-not-block-render.tentative.html | 21 + ...ated-link-stylesheet-does-not-block-script.html | 20 + ...reated-style-element-does-not-block-script.html | 20 + .../style-element-media-match-block-script.html | 17 + ...ment-media-not-match-does-not-block-script.html | 17 + .../stylesheet.py | 10 + .../support/link-style.css | 3 + .../support/utils.js | 20 + .../document-metadata/styling/LinkStyle.html | 88 +++ .../styling/support/alternate.css | 7 + .../styling/support/emptytitle.css | 4 + .../document-metadata/styling/support/normal.css | 5 + .../document-metadata/styling/support/notitle.css | 4 + .../document-metadata/styling/support/unmatch.css | 4 + .../the-base-element/base-data.html | 32 ++ .../the-base-element/base-javascript.html | 32 ++ .../the-base-element/base_about_blank.html | 19 + .../the-base-element/base_href_empty.html | 29 + .../the-base-element/base_href_invalid.html | 12 + .../the-base-element/base_href_specified.html | 33 ++ .../the-base-element/base_href_unspecified.html | 30 + .../the-base-element/base_multiple.html | 29 + .../the-base-element/base_srcdoc.html | 19 + ...rget_does_not_affect_iframe_src_navigation.html | 10 + ...target_does_not_affect_location_assignment.html | 10 + .../the-base-element/example.html | 7 + .../the-base-element/example2.html | 5 + .../document-metadata/the-link-element/all | 3 + .../document-metadata/the-link-element/all.headers | 1 + .../document-without-browsing-context.html | 35 ++ ...ink-error-fired-before-scripting-unblocked.html | 25 + .../the-link-element/link-load-error-events.html | 6 + .../link-load-error-events.https.html | 6 + .../the-link-element/link-load-event.html | 17 + ...link-load-fired-before-scripting-unblocked.html | 24 + .../link-multiple-error-events.html | 21 + .../link-multiple-load-events.html | 21 + ...el-attribute-ascii-case-insensitive-notref.html | 5 + .../link-rel-attribute-ascii-case-insensitive.html | 22 + .../the-link-element/link-rel-attribute.html | 44 ++ .../the-link-element/link-rellist.html | 25 + .../the-link-element/link-style-error-01.html | 37 ++ .../link-style-error-limited-quirks.html | 7 + .../the-link-element/link-style-error-quirks.html | 7 + .../the-link-element/link-type-attribute-ref.html | 3 + .../the-link-element/link-type-attribute.html | 9 + .../the-link-element/resources/bad.css | 4 + .../the-link-element/resources/css.py | 7 + .../the-link-element/resources/empty-href.css | 3 + .../the-link-element/resources/good.css | 3 + .../resources/link-load-error-events.sub.js | 192 +++++++ .../resources/link-rel-attribute.css | 3 + .../the-link-element/resources/link-style-error.js | 47 ++ .../the-link-element/resources/neutral.css | 3 + .../the-link-element/resources/stylesheet.css | 3 + .../document-metadata/the-link-element/style.css | 3 + .../stylesheet-change-href-ref.html | 8 + .../the-link-element/stylesheet-change-href.html | 13 + .../stylesheet-empty-href-ref.html | 9 + .../the-link-element/stylesheet-empty-href.html | 12 + .../the-link-element/stylesheet-media-ref.html | 9 + .../the-link-element/stylesheet-media.html | 17 + ...et-not-removed-until-next-stylesheet-loads.html | 22 + .../the-link-element/stylesheet-with-base-ref.html | 11 + .../the-link-element/stylesheet-with-base.html | 11 + .../the-link-element/stylesheet.css | 3 + .../the-link-element/stylesheet.py | 9 + .../meta-color-scheme-attribute-changes.html | 35 ++ .../meta-color-scheme-empty-content-value.html | 14 + .../meta-color-scheme-first-valid-applies.html | 16 + .../color-scheme/meta-color-scheme-insert.html | 26 + .../meta-color-scheme-no-content-value.html | 14 + ...meta-color-scheme-normal-descendant-change.html | 20 + .../meta-color-scheme-remove-head.html | 17 + .../color-scheme/meta-color-scheme-remove.html | 19 + .../meta-color-scheme-single-value-in-body.html | 12 + .../meta-color-scheme-single-value-in-head.html | 10 + ...a-color-scheme-single-value-in-shadow-tree.html | 22 + .../support/compute-root-color-scheme.js | 28 + .../the-meta-element/http-equiv-and-name-1.html | 23 + .../the-meta-element/http-equiv-and-name-2.html | 13 + .../allow-scripts-flag-changing-1.html | 57 ++ .../allow-scripts-flag-changing-2.html | 55 ++ .../dynamic-append.html | 31 + .../not-in-shadow-tree.html | 38 ++ .../attr-meta-http-equiv-refresh/parsing.html | 147 +++++ .../remove-from-document.html | 37 ++ .../attr-meta-http-equiv-refresh/support/;url=foo | 1 + .../support/__dir__.headers | 1 + .../attr-meta-http-equiv-refresh/support/foo | 1 + .../attr-meta-http-equiv-refresh/support/foo'bar | 1 + .../support/refresh.py | 4 + .../support/refresh.sub.html | 1 + .../attr-meta-http-equiv-refresh/support/ufoo | 1 + .../attr-meta-http-equiv-refresh/support/urfoo | 1 + .../attr-meta-http-equiv-refresh/support/url foo | 1 + .../attr-meta-http-equiv-refresh/support/urlfoo | 1 + .../attr-meta-http-equiv-refresh/support/x;url=foo | 1 + ...iv-enumerated-ascii-case-insensitive-lower.html | 5 + ...iv-enumerated-ascii-case-insensitive-message.js | 1 + ...iv-enumerated-ascii-case-insensitive-mixed.html | 5 + ...iv-enumerated-ascii-case-insensitive-other.html | 5 + ...tp-equiv-enumerated-ascii-case-insensitive.html | 32 ++ .../the-meta-element/the-lang-attribute-012.html | 51 ++ .../the-style-element/historical.html | 14 + .../html_style_in_comment-ref.html | 18 + .../the-style-element/html_style_in_comment.xhtml | 18 + .../the-style-element/mutations.window.js | 48 ++ .../the-style-element/style-error-01.html | 32 ++ .../the-style-element/style-load-after-mutate.html | 16 + .../the-style-element/style_disabled.html | 39 ++ .../the-style-element/style_events.html | 36 ++ .../the-style-element/style_load_async.html | 25 + .../the-style-element/style_load_event.html | 28 + .../the-style-element/style_media.html | 40 ++ .../the-style-element/style_media_change.html | 43 ++ .../style_non_matching_media.html | 20 + .../the-style-element/style_type_change.html | 39 ++ .../the-style-element/style_type_html.html | 71 +++ .../the-style-element/style_type_svg.svg | 75 +++ .../the-style-element/support/css-red.txt | 1 + ...ate-style-block-ascii-case-insensitive-ref.html | 9 + .../update-style-block-ascii-case-insensitive.html | 16 + .../the-title-element/title.text-01.html | 25 + .../the-title-element/title.text-02.xhtml | 30 + .../the-title-element/title.text-03.html | 32 ++ .../the-title-element/title.text-04.xhtml | 37 ++ .../edits/the-del-element/del_effect.html | 19 + .../edits/the-ins-element/ins_effect.html | 19 + .../tests/html/semantics/embedded-content/META.yml | 2 + .../embedded-content/bfcache/embedded-html.html | 10 + .../embedded-content/bfcache/embedded-img.html | 10 + .../embedded-content/bfcache/embedded-js.html | 11 + .../embedded-content/bfcache/embedded-mp4.html | 10 + .../bfcache/embedded-not-found.html | 10 + .../bfcache/embedded-type-only.html | 10 + .../embedded-content/bfcache/resources/common.js | 46 ++ .../hash-name-reference-test-data.html | 254 +++++++++ .../hash-name-reference.html | 45 ++ .../audio_controls_present-manual.html | 14 + .../media-elements/audio_loop_base.html | 42 ++ .../media-elements/audio_loop_seek_to_eos.html | 29 + .../audio_muted_overriding_volume-manual.html | 21 + .../media-elements/audio_muted_present-manual.html | 20 + .../media-elements/audio_volume_check.html | 58 ++ .../audio_volume_loudest-manual.html | 21 + .../media-elements/audio_volume_silent-manual.html | 21 + ...olicy-attribute-redirect-on-load.https.sub.html | 35 ++ ...owed-by-feature-policy-attribute.https.sub.html | 34 ++ ...toplay-allowed-by-feature-policy.https.sub.html | 39 ++ ...llowed-by-feature-policy.https.sub.html.headers | 1 + .../autoplay-default-feature-policy.https.sub.html | 39 ++ ...oplay-disabled-by-feature-policy.https.sub.html | 39 ++ ...sabled-by-feature-policy.https.sub.html.headers | 1 + .../autoplay-supported-by-feature-policy.html | 11 + .../media-elements/autoplay-with-broken-track.html | 34 ++ .../media-elements/controlsList.tentative.html | 32 ++ .../media-elements/error-codes/error.html | 40 ++ .../media-elements/event_canplay.html | 40 ++ .../media-elements/event_canplay_noautoplay.html | 34 ++ .../media-elements/event_canplaythrough.html | 40 ++ .../event_canplaythrough_noautoplay.html | 34 ++ .../media-elements/event_loadeddata.html | 40 ++ .../event_loadeddata_noautoplay.html | 34 ++ .../media-elements/event_loadedmetadata.html | 40 ++ .../event_loadedmetadata_noautoplay.html | 34 ++ .../media-elements/event_loadstart.html | 38 ++ .../media-elements/event_loadstart_noautoplay.html | 36 ++ .../event_order_canplay_canplaythrough.html | 50 ++ .../event_order_canplay_playing.html | 50 ++ .../event_order_loadedmetadata_loadeddata.html | 50 ++ .../event_order_loadstart_progress.html | 50 ++ .../media-elements/event_pause.html | 40 ++ .../media-elements/event_pause_noautoplay.html | 42 ++ .../media-elements/event_play.html | 40 ++ .../media-elements/event_play_noautoplay.html | 40 ++ .../media-elements/event_playing.html | 40 ++ .../media-elements/event_playing_noautoplay.html | 40 ++ .../media-elements/event_progress.html | 40 ++ .../media-elements/event_progress_noautoplay.html | 34 ++ .../media-elements/event_timeupdate.html | 34 ++ .../event_timeupdate_noautoplay.html | 42 ++ .../media-elements/event_volumechange.html | 72 +++ .../media-elements/historical.html | 56 ++ .../HTMLElement/HTMLMediaElement/addTextTrack.html | 116 ++++ .../HTMLElement/HTMLMediaElement/crossOrigin.html | 60 ++ .../HTMLElement/HTMLMediaElement/textTracks.html | 13 + .../HTMLElement/HTMLTrackElement/default.html | 55 ++ .../HTMLElement/HTMLTrackElement/kind.html | 146 +++++ .../HTMLElement/HTMLTrackElement/label.html | 83 +++ .../HTMLElement/HTMLTrackElement/readyState.html | 18 + .../HTMLElement/HTMLTrackElement/src.html | 43 ++ .../HTMLElement/HTMLTrackElement/srclang.html | 82 +++ .../HTMLElement/HTMLTrackElement/track.html | 12 + .../interfaces/TextTrack/activeCues.html | 101 ++++ .../interfaces/TextTrack/addCue.html | 68 +++ .../interfaces/TextTrack/constants.html | 23 + .../media-elements/interfaces/TextTrack/cues.html | 100 ++++ .../media-elements/interfaces/TextTrack/kind.html | 31 + .../media-elements/interfaces/TextTrack/label.html | 29 + .../interfaces/TextTrack/language.html | 29 + .../media-elements/interfaces/TextTrack/mode.html | 55 ++ .../interfaces/TextTrack/oncuechange.html | 33 ++ .../interfaces/TextTrack/removeCue.html | 50 ++ .../interfaces/TextTrackCue/constructor.html | 23 + .../interfaces/TextTrackCue/endTime.html | 40 ++ .../media-elements/interfaces/TextTrackCue/id.html | 39 ++ .../interfaces/TextTrackCue/onenter.html | 36 ++ .../interfaces/TextTrackCue/onexit.html | 36 ++ .../interfaces/TextTrackCue/pauseOnExit.html | 40 ++ .../interfaces/TextTrackCue/startTime.html | 39 ++ .../interfaces/TextTrackCue/track.html | 38 ++ .../interfaces/TextTrackCueList/getCueById.html | 53 ++ .../interfaces/TextTrackCueList/getter.html | 49 ++ .../interfaces/TextTrackCueList/length.html | 22 + .../interfaces/TextTrackList/getTrackById.html | 16 + .../interfaces/TextTrackList/getter.html | 32 ++ .../interfaces/TextTrackList/length.html | 18 + .../interfaces/TextTrackList/onaddtrack.html | 33 ++ .../interfaces/TextTrackList/onremovetrack.html | 33 ++ .../interfaces/TrackEvent/constructor.html | 25 + .../interfaces/TrackEvent/createEvent.html | 15 + .../autoplay-overrides-preload.html | 29 + .../load-events-networkState.html | 91 +++ .../load-removes-queued-error-event.html | 44 ++ ...resource-selection-candidate-insert-before.html | 29 + .../resource-selection-candidate-moved.html | 21 + ...election-candidate-remove-addEventListener.html | 26 + ...rce-selection-candidate-remove-no-listener.html | 26 + ...esource-selection-candidate-remove-onerror.html | 26 + .../resource-selection-currentSrc.html | 93 +++ ...-selection-invoke-audio-constructor-no-src.html | 13 + ...esource-selection-invoke-audio-constructor.html | 12 + .../resource-selection-invoke-in-sync-event.html | 30 + ...ction-invoke-insert-fragment-into-document.html | 22 + ...urce-selection-invoke-insert-into-document.html | 12 + ...source-selection-invoke-insert-into-iframe.html | 23 + ...lection-invoke-insert-parent-into-document.html | 19 + ...urce-selection-invoke-insert-source-in-div.html | 14 + ...election-invoke-insert-source-in-namespace.html | 14 + ...election-invoke-insert-source-networkState.html | 38 ++ ...ction-invoke-insert-source-not-in-document.html | 13 + .../resource-selection-invoke-insert-source.html | 14 + .../resource-selection-invoke-load.html | 20 + ...source-selection-invoke-pause-networkState.html | 28 + .../resource-selection-invoke-pause.html | 20 + .../resource-selection-invoke-play.html | 20 + ...n-invoke-remove-from-document-networkState.html | 29 + ...urce-selection-invoke-remove-from-document.html | 15 + .../resource-selection-invoke-remove-src.html | 22 + ...urce-selection-invoke-set-src-in-namespace.html | 14 + ...urce-selection-invoke-set-src-networkState.html | 16 + ...e-selection-invoke-set-src-not-in-document.html | 13 + .../resource-selection-invoke-set-src.html | 14 + .../resource-selection-pointer-control.html | 26 + .../resource-selection-pointer-insert-br.html | 33 ++ .../resource-selection-pointer-insert-source.html | 44 ++ .../resource-selection-pointer-insert-text.html | 33 ++ ...urce-selection-pointer-remove-source-after.html | 56 ++ .../resource-selection-pointer-remove-source.html | 43 ++ .../resource-selection-pointer-remove-text.html | 33 ++ .../resource-selection-remove-source.html | 24 + .../resource-selection-remove-src.html | 22 + .../resource-selection-resumes-onload.html | 18 + ...resource-selection-source-media-env-change.html | 24 + .../resource-selection-source-media.html | 14 + .../resources/delayed-broken-video.py | 5 + .../resources/media-min-width.html | 31 + .../stable-state-beforeunload-manual.html | 30 + .../stable-state-dialogs-manual.html | 18 + .../stable-state-print-manual.html | 22 + .../location-of-the-media-resource/currentSrc.html | 48 ++ .../media-elements/media_fragment_seek.html | 49 ++ .../media-elements/mime-types/canPlayType.html | 123 ++++ .../networkState_during_loadstart.html | 42 ++ .../networkState_during_progress.html | 42 ++ .../media-elements/networkState_initial.html | 33 ++ .../currentTime.html | 32 ++ .../offsets-into-the-media-resource/duration.html | 11 + .../media-elements/paused_false_during_play.html | 42 ++ .../media-elements/paused_true_during_pause.html | 48 ++ .../media-elements/pitch-detector.js | 58 ++ .../loop-from-ended.tentative.html | 57 ++ .../pause-move-to-other-document.html | 25 + .../pause-move-within-document.html | 25 + .../pause-remove-from-document-different-load.html | 44 ++ .../pause-remove-from-document-networkState.html | 27 + .../pause-remove-from-document.html | 37 ++ .../play-in-detached-document.html | 24 + .../playing-the-media-resource/playbackRate.html | 53 ++ .../preload_reflects_none_autoplay.html | 31 + .../media-elements/preserves-pitch.html | 132 +++++ .../ready-states/autoplay-hidden.optional.html | 37 ++ .../autoplay-with-slow-text-tracks.html | 46 ++ .../media-elements/ready-states/autoplay.html | 73 +++ .../media-elements/readyState_during_canplay.html | 42 ++ .../readyState_during_canplaythrough.html | 42 ++ .../readyState_during_loadeddata.html | 42 ++ .../readyState_during_loadedmetadata.html | 42 ++ .../media-elements/readyState_during_playing.html | 42 ++ .../media-elements/readyState_initial.html | 33 ++ .../seeking/seek-to-currentTime.html | 34 ++ .../media-elements/seeking/seek-to-max-value.htm | 23 + .../seeking/seek-to-negative-time.htm | 23 + .../media-elements/src_object_blob.html | 26 + ...src_reflects_attribute_not_source_elements.html | 33 ++ .../track/track-element/cloneNode.html | 87 +++ .../track/track-element/cors/003.html | 10 + .../track/track-element/cors/004.html | 10 + .../track/track-element/cors/005.html | 10 + .../track/track-element/cors/006.html | 10 + .../track/track-element/cors/007.html | 10 + .../track/track-element/cors/008.html | 10 + .../track/track-element/cors/009.html | 10 + .../track/track-element/cors/010.html | 10 + .../track/track-element/cors/011.html | 10 + .../track/track-element/cors/012.html | 10 + .../track/track-element/cors/013.html | 10 + .../track/track-element/cors/014.html | 10 + .../track/track-element/cors/015.html | 10 + .../track/track-element/cors/016.html | 10 + .../track/track-element/cors/017.html | 10 + .../track/track-element/cors/018.html | 10 + .../track/track-element/cors/019.html | 10 + .../track/track-element/cors/020.html | 10 + .../track/track-element/cors/021.html | 10 + .../track/track-element/cors/022.html | 10 + .../track/track-element/cors/023.html | 10 + .../track/track-element/cors/024.html | 10 + .../track/track-element/cors/025.html | 10 + .../track/track-element/cors/026.html | 10 + .../track/track-element/cors/027.html | 10 + .../track/track-element/cors/028.html | 10 + .../track/track-element/cors/029.html | 10 + .../track/track-element/cors/030.html | 10 + .../track/track-element/cors/031.html | 10 + .../track/track-element/cors/032.html | 10 + .../track/track-element/cors/033.html | 10 + .../track/track-element/cors/034.html | 10 + .../track/track-element/cors/035.html | 10 + .../track/track-element/cors/036.html | 10 + .../track/track-element/cors/037.html | 10 + .../track/track-element/cors/038.html | 10 + .../track/track-element/cors/039.html | 10 + .../track/track-element/cors/040.html | 10 + .../track/track-element/cors/041.html | 10 + .../track/track-element/cors/042.html | 10 + .../track/track-element/cors/043.html | 10 + .../track/track-element/cors/044.html | 10 + .../track/track-element/cors/045.html | 10 + .../track/track-element/cors/046.html | 10 + .../track/track-element/cors/support/common.js | 144 +++++ .../track-element/cors/support/cors-tester.py | 50 ++ .../track-element/cors/support/remove-cookie.html | 6 + .../track-element/cors/support/set-cookie.html | 6 + ...ack-element-src-aborted-load-onerror-crash.html | 21 + .../track-element/no-cuechange-before-play.html | 27 + .../resources/align-positioning-bad.vtt | 20 + .../track-element/resources/align-positioning.vtt | 20 + .../resources/align-text-line-position-bad.vtt | 21 + .../resources/align-text-line-position.vtt | 28 + .../track-element/resources/alignment-bad.vtt | 22 + .../track-element/resources/alignment-ltr.vtt | 22 + .../track/track-element/resources/alignment.vtt | 22 + .../track/track-element/resources/bom.vtt | 10 + .../track-element/resources/captions-fast.vtt | 13 + .../track-element/resources/captions-gaps.vtt | 18 + .../track-element/resources/captions-html.vtt | 18 + .../track/track-element/resources/captions.vtt | 18 + .../track/track-element/resources/class-bad.vtt | 17 + .../track/track-element/resources/class.vtt | 14 + .../track/track-element/resources/cue-id-error.vtt | 14 + .../track/track-element/resources/cue-id.vtt | 18 + .../track-element/resources/cue-no-id-error.vtt | 14 + .../track/track-element/resources/cue-no-id.vtt | 11 + .../resources/cue-recovery-cuetext.vtt | 6 + .../resources/cue-recovery-header.vtt | 6 + .../track-element/resources/cue-recovery-note.vtt | 9 + .../track-element/resources/cue-size-align-bad.vtt | 18 + .../track-element/resources/cue-size-align.vtt | 19 + .../track/track-element/resources/cue-size-bad.vtt | 17 + .../track/track-element/resources/cue-size.vtt | 19 + .../track-element/resources/cues-chrono-order.vtt | 14 + .../track-element/resources/cues-no-separation.vtt | 11 + .../track-element/resources/cues-overlapping.vtt | 14 + .../track/track-element/resources/cues.vtt | 17 + .../track-element/resources/default-styles.vtt | 19 + .../track-element/resources/degenerate-cues.vtt | 5 + .../track/track-element/resources/empty-cue.vtt | 11 + .../track-element/resources/entities-wrong.vtt | 15 + .../track/track-element/resources/entities.vtt | 30 + .../resources/interspersed-non-cue.vtt | 9 + .../track/track-element/resources/iso2022jp3.vtt | 10 + .../track-element/resources/large-timestamp.vtt | 5 + .../track-element/resources/line-position-bad.vtt | 30 + .../track-element/resources/line-position.vtt | 37 ++ .../track/track-element/resources/markup-bad.vtt | 22 + .../track/track-element/resources/markup.vtt | 22 + .../track-element/resources/metadata-area.vtt | 14 + .../track/track-element/resources/metadata.vtt | 38 ++ .../track/track-element/resources/missed-cues.vtt | 31 + .../track-element/resources/no-newline-at-eof.vtt | 6 + .../track/track-element/resources/no-timings.vtt | 13 + .../track/track-element/resources/no-webvtt.vtt | 10 + .../track-element/resources/positioning-bad.vtt | 39 ++ .../track-element/resources/positioning-ltr.vtt | 21 + .../track/track-element/resources/positioning.vtt | 21 + .../resources/settings-bad-separation.vtt | 20 + .../track/track-element/resources/settings.vtt | 18 + .../track-element/resources/simple-captions.vtt | 17 + .../track-element/resources/sorted-dispatch.vtt | 34 ++ .../track-element/resources/timestamp-bad.vtt | 17 + .../track/track-element/resources/timestamp.vtt | 14 + .../track-element/resources/timings-hour-error.vtt | 22 + .../track/track-element/resources/timings-hour.vtt | 14 + .../resources/timings-no-hour-errors.vtt | 22 + .../track-element/resources/timings-no-hour.vtt | 18 + .../track-element/resources/timings-whitespace.vtt | 51 ++ .../track/track-element/resources/track.de.vtt | 4 + .../track/track-element/resources/track.en.vtt | 4 + .../track/track-element/resources/track.fr.vtt | 4 + .../track/track-element/resources/track.vtt | 4 + .../track-element/resources/unsupported-markup.vtt | 23 + .../track/track-element/resources/utf8.vtt | 10 + .../track/track-element/resources/valign-bad.vtt | 17 + .../track/track-element/resources/valign-ltr.vtt | 20 + .../track/track-element/resources/valign.vtt | 20 + .../track/track-element/resources/voice-bad.vtt | 17 + .../track/track-element/resources/voice.vtt | 15 + .../track-element/resources/vp8-vorbis-webvtt.webm | Bin 0 -> 143662 bytes .../track/track-element/resources/webvtt-file.vtt | 9 + .../track-element/resources/webvtt-rubbish.vtt | 10 + .../track/track-element/src-clear-cues.html | 52 ++ .../track/track-element/src-empty-string.html | 21 + .../track/track-element/track-active-cues.html | 42 ++ .../track/track-element/track-add-remove-cue.html | 92 +++ .../track/track-element/track-add-track.html | 34 ++ .../track/track-element/track-addtrack-kind.html | 25 + .../track/track-element/track-api-texttracks.html | 36 ++ .../track/track-element/track-change-event.html | 21 + .../track-element/track-css-cue-pseudo-class.html | 12 + .../track/track-element/track-cue-empty.html | 19 + .../track/track-element/track-cue-inline.html | 16 + .../track-element/track-cue-mutable-fragment.html | 85 +++ .../track/track-element/track-cue-mutable.html | 99 ++++ .../track-element/track-cue-negative-duration.html | 30 + .../track-cue-negative-timestamp-events.html | 32 ++ .../track-cue-negative-timestamp.html | 42 ++ .../track/track-element/track-cue-order.html | 83 +++ ...ack-cue-rendering-after-controls-added-ref.html | 31 + .../track-cue-rendering-after-controls-added.html | 37 ++ ...k-cue-rendering-after-controls-removed-ref.html | 29 + ...track-cue-rendering-after-controls-removed.html | 34 ++ .../track-cue-rendering-empty-cue.html | 16 + .../track-cue-rendering-line-doesnt-fit-ref.html | 32 ++ .../track-cue-rendering-line-doesnt-fit.html | 32 ++ .../track-cue-rendering-transformed-video-ref.html | 35 ++ .../track-cue-rendering-transformed-video.html | 28 + ...uechange-dynamically-created-track-element.html | 28 + .../track/track-element/track-cues-cuechange.html | 41 ++ .../track/track-element/track-cues-enter-exit.html | 44 ++ .../track-element/track-cues-enter-seeking.html | 38 ++ .../track/track-element/track-cues-missed.html | 59 ++ .../track-element/track-cues-pause-on-exit.html | 35 ++ .../track/track-element/track-cues-seeking.html | 31 + .../track-cues-sorted-before-dispatch.html | 48 ++ .../track/track-element/track-data-url.html | 30 + .../track-element/track-default-attribute.html | 26 + .../track-element/track-delete-during-setup.html | 29 + .../track/track-element/track-disabled-addcue.html | 33 ++ .../track/track-element/track-disabled.html | 28 + .../track-element/track-element-dom-change.html | 16 + .../track-element-src-aborted-load.html | 19 + .../track-element-src-change-error.html | 86 +++ .../track-element/track-element-src-change.html | 55 ++ .../track/track-element/track-helpers.js | 83 +++ .../track/track-element/track-id.html | 25 + .../track-element/track-insert-after-load.html | 14 + .../track/track-element/track-large-timestamp.html | 19 + .../track-element/track-load-error-readyState.html | 15 + .../track-load-from-element-readyState.html | 15 + .../track-load-from-src-readyState.html | 20 + .../track/track-element/track-mode-disabled.html | 34 ++ .../track-mode-not-changed-by-new-track.html | 74 +++ .../track-element/track-mode-triggers-loading.html | 37 ++ .../track/track-element/track-mode.html | 76 +++ .../track/track-element/track-node-add-remove.html | 36 ++ .../track-element/track-remove-active-cue.html | 35 ++ .../track-remove-by-setting-innerHTML.html | 31 + .../track-remove-insert-ready-state.html | 38 ++ .../track/track-element/track-remove-quickly.html | 14 + .../track-element/track-remove-track-inband.html | 79 +++ .../track/track-element/track-remove-track.html | 39 ++ .../track-element/track-selection-metadata.html | 33 ++ .../track-element/track-selection-task-order.html | 36 ++ .../track-element/track-text-track-cue-list.html | 29 + .../track/track-element/track-texttracks.html | 44 ++ .../track-webvtt-align-positioning.html | 52 ++ .../track-webvtt-align-text-line-position.html | 54 ++ .../track-element/track-webvtt-alignment.html | 31 + .../track-element/track-webvtt-blank-lines.html | 26 + .../track/track-element/track-webvtt-bom.html | 34 ++ .../track-element/track-webvtt-class-markup.html | 56 ++ .../track-webvtt-cue-identifiers.html | 27 + .../track-element/track-webvtt-cue-no-id.html | 19 + .../track-element/track-webvtt-cue-recovery.html | 19 + .../track-element/track-webvtt-cue-size-align.html | 26 + .../track/track-element/track-webvtt-cue-size.html | 26 + .../track-webvtt-degenerate-cues.html | 16 + .../track-element/track-webvtt-empty-cue.html | 10 + .../track/track-element/track-webvtt-entities.html | 42 ++ .../track-element/track-webvtt-header-comment.html | 50 ++ .../track-webvtt-interspersed-non-cue.html | 15 + .../track-element/track-webvtt-line-position.html | 58 ++ .../track-element/track-webvtt-magic-header.html | 57 ++ .../track/track-element/track-webvtt-markup.html | 90 +++ .../track/track-element/track-webvtt-newlines.html | 26 + .../track-element/track-webvtt-no-timings.html | 17 + .../track-webvtt-non-snap-to-lines-ref.html | 29 + .../track-webvtt-non-snap-to-lines.html | 24 + .../track-element/track-webvtt-positioning.html | 35 ++ .../track/track-element/track-webvtt-settings.html | 28 + .../track-element/track-webvtt-timestamp.html | 36 ++ .../track-element/track-webvtt-timings-hour.html | 61 ++ .../track-webvtt-timings-no-hours.html | 67 +++ .../track-webvtt-timings-whitespace.html | 25 + ...-webvtt-two-cue-layout-after-first-end-ref.html | 25 + ...rack-webvtt-two-cue-layout-after-first-end.html | 26 + .../track-webvtt-unsupported-markup.html | 37 ++ .../track/track-element/track-webvtt-utf8.html | 57 ++ .../track/track-element/track-webvtt-valign.html | 28 + .../track/track-element/track-webvtt-voice.html | 54 ++ .../track-element/vtt-cue-float-precision.html | 28 + .../media-elements/user-interface/muted.html | 169 ++++++ .../video_controls_present-manual.html | 14 + .../media-elements/video_loop_base.html | 40 ++ .../video_muted_overriding_volume-manual.html | 21 + .../media-elements/video_muted_present-manual.html | 20 + .../media-elements/video_volume_check.html | 58 ++ .../video_volume_loudest-manual.html | 21 + .../media-elements/video_volume_silent-manual.html | 21 + .../media-elements/volume_nonfinite.html | 18 + .../semantics/embedded-content/resources/common.js | 45 ++ .../embedded-content/resources/not-embeddable.html | 3 + .../resources/not-embeddable.html.headers | 1 + .../embedded-content/resources/should-load.html | 3 + .../resources/should-not-load.html | 5 + .../the-area-element/area-coords.html | 47 ++ .../the-area-element/area-download-click.html | 32 ++ .../the-area-element/area-processing.html | 32 ++ .../the-area-element/area-shape.html | 36 ++ .../the-area-element/area-stringifier.html | 16 + .../resources/area-download-click.html | 5 + .../the-area-element/support/hit-test.js | 42 ++ ...dio-appendChild-to-inactive-document-crash.html | 6 + .../audio-play-in-inactive-document-crash.html | 8 + .../the-audio-element/audio_001.htm | 18 + .../the-audio-element/audio_002.htm | 18 + .../the-audio-element/audio_constructor.html | 56 ++ .../the-audio-element/audio_content-ref.htm | 13 + .../the-canvas-element/2d-getcontext-options.html | 47 ++ .../canvas-descendants-focusability-001.html | 39 ++ .../canvas-descendants-focusability-002.html | 39 ++ ...vas-descendants-focusability-003.tentative.html | 48 ++ ...vas-descendants-focusability-004.tentative.html | 47 ++ .../canvas-descendants-focusability-005.html | 61 ++ .../context.arguments.missing.html | 27 + .../the-canvas-element/context.casesensitive.html | 27 + .../the-canvas-element/context.emptystring.html | 27 + .../context.unrecognised.badname.html | 27 + .../context.unrecognised.badsuffix.html | 27 + .../context.unrecognised.nullsuffix.html | 27 + .../context.unrecognised.unicode.html | 27 + .../the-canvas-element/fallback.basic.html | 27 + .../the-canvas-element/fallback.multiple.html | 27 + .../the-canvas-element/fallback.nested.html | 27 + .../the-canvas-element/historical.html | 77 +++ .../the-canvas-element/imagedata.html | 58 ++ .../the-canvas-element/initial.colour.html | 29 + .../the-canvas-element/initial.colour.png | Bin 0 -> 117 bytes .../the-canvas-element/initial.reset.clip.html | 32 ++ .../initial.reset.different.html | 30 + .../the-canvas-element/initial.reset.different.png | Bin 0 -> 107 bytes .../the-canvas-element/initial.reset.gradient.html | 35 ++ .../the-canvas-element/initial.reset.path.html | 31 + .../the-canvas-element/initial.reset.path.png | Bin 0 -> 117 bytes .../the-canvas-element/initial.reset.pattern.html | 35 ++ .../the-canvas-element/initial.reset.same.html | 31 + .../the-canvas-element/initial.reset.same.png | Bin 0 -> 117 bytes .../initial.reset.transform.html | 31 + .../the-canvas-element/security.dataURI.html | 39 ++ .../security.drawImage.canvas.cross.html | 36 ++ .../security.drawImage.canvas.redirect.html | 36 ++ .../security.drawImage.image.cross.html | 31 + .../security.drawImage.image.redirect.html | 31 + .../security.pattern.canvas.fillStyle.cross.html | 38 ++ ...security.pattern.canvas.fillStyle.redirect.html | 38 ++ .../security.pattern.canvas.strokeStyle.cross.html | 38 ++ ...curity.pattern.canvas.strokeStyle.redirect.html | 38 ++ .../security.pattern.canvas.timing.cross.html | 41 ++ .../security.pattern.canvas.timing.redirect.html | 41 ++ .../security.pattern.create.cross.html | 32 ++ .../security.pattern.create.redirect.html | 32 ++ .../security.pattern.cross.cross.html | 39 ++ .../security.pattern.cross.redirect.html | 39 ++ .../security.pattern.fillStyle.sub.html | 50 ++ .../security.pattern.image.fillStyle.cross.html | 33 ++ .../security.pattern.image.fillStyle.redirect.html | 33 ++ .../security.pattern.image.strokeStyle.cross.html | 33 ++ ...ecurity.pattern.image.strokeStyle.redirect.html | 33 ++ .../the-canvas-element/security.reset.cross.html | 35 ++ .../security.reset.redirect.html | 35 ++ .../size.attributes.default.html | 30 + .../the-canvas-element/size.attributes.default.png | Bin 0 -> 272 bytes .../the-canvas-element/size.attributes.get.png | Bin 0 -> 125 bytes .../the-canvas-element/size.attributes.idl.html | 50 ++ .../size.attributes.idl.set.zero.html | 30 + .../size.attributes.reflect.setcontent.html | 32 ++ .../size.attributes.reflect.setcontent.png | Bin 0 -> 125 bytes .../size.attributes.reflect.setidl.html | 32 ++ .../size.attributes.reflect.setidl.png | Bin 0 -> 125 bytes .../size.attributes.reflect.setidlzero.html | 32 ++ .../size.attributes.removed.html | 29 + .../the-canvas-element/size.attributes.removed.png | Bin 0 -> 168 bytes .../the-canvas-element/size.attributes.set.png | Bin 0 -> 125 bytes .../the-canvas-element/size.attributes.style.html | 29 + .../the-canvas-element/size.attributes.style.png | Bin 0 -> 117 bytes ...Blob-cross-realm-callback-report-exception.html | 29 + .../the-canvas-element/toBlob.jpeg.html | 17 + .../the-canvas-element/toBlob.null.html | 33 ++ .../the-canvas-element/toBlob.png.html | 17 + .../the-canvas-element/toDataURL.arguments.1.html | 28 + .../the-canvas-element/toDataURL.arguments.2.html | 28 + .../the-canvas-element/toDataURL.arguments.3.html | 29 + .../the-canvas-element/toDataURL.bogustype.html | 28 + .../the-canvas-element/toDataURL.default.html | 28 + .../the-canvas-element/toDataURL.jpeg.alpha.html | 44 ++ .../the-canvas-element/toDataURL.jpeg.alpha.png | Bin 0 -> 208 bytes .../toDataURL.jpeg.primarycolours.html | 47 ++ .../toDataURL.jpeg.primarycolours.png | Bin 0 -> 220 bytes .../toDataURL.jpeg.quality.basic.html | 56 ++ .../toDataURL.jpeg.quality.basic.png | Bin 0 -> 213 bytes .../toDataURL.jpeg.quality.notnumber.html | 42 ++ .../toDataURL.jpeg.quality.outsiderange.html | 43 ++ .../the-canvas-element/toDataURL.jpg.html | 28 + .../toDataURL.lowercase.ascii.html | 35 ++ .../toDataURL.lowercase.unicode.html | 32 ++ .../the-canvas-element/toDataURL.nocontext.html | 33 ++ .../toDataURL.png.complexcolours.html | 47 ++ .../toDataURL.png.complexcolours.png | Bin 0 -> 242 bytes .../the-canvas-element/toDataURL.png.html | 28 + .../toDataURL.png.primarycolours.html | 47 ++ .../toDataURL.png.primarycolours.png | Bin 0 -> 220 bytes .../the-canvas-element/toDataURL.unrecognised.html | 28 + .../the-canvas-element/toDataURL.zeroheight.html | 28 + .../the-canvas-element/toDataURL.zerosize.html | 28 + .../the-canvas-element/toDataURL.zerowidth.html | 28 + .../the-canvas-element/type.delete.html | 28 + .../the-canvas-element/type.exists.html | 27 + .../the-canvas-element/type.extend.html | 28 + .../the-canvas-element/type.name.html | 27 + .../the-canvas-element/type.prototype.html | 36 ++ .../the-canvas-element/type.replace.html | 28 + ...ument-getters-return-null-for-cross-origin.html | 14 + .../the-embed-element/embed-change-src.html | 26 + .../the-embed-element/embed-dimension.html | 20 + ...ed-document-under-content-visibility-focus.html | 25 + ...bed-document-under-content-visibility-gbcr.html | 24 + .../the-embed-element/embed-document.html | 17 + .../embed-hidden-attribute-ref.html | 13 + .../the-embed-element/embed-hidden-attribute.html | 20 + .../the-embed-element/embed-iframe.html | 7 + .../embed-ignored-in-media-element.html | 22 + .../embed-in-object-fallback-2.html | 56 ++ .../embed-in-object-fallback-subdocument.html | 4 + .../embed-in-object-fallback.html | 38 ++ ...bed-named-attribute-detached-context-crash.html | 13 + .../the-embed-element/embed-network-error.sub.html | 54 ++ .../embed-represent-nothing-01.html | 18 + .../embed-represent-nothing-02.html | 22 + .../embed-represent-nothing-03.html | 20 + .../embed-represent-nothing-04.html | 20 + .../embed-represent-nothing-ref.html | 7 + .../embed-svg-navigation-resets-size.html | 31 + .../the-embed-element/historical.html | 15 + ...ument-getters-return-null-for-cross-origin.html | 13 + .../the-iframe-element/change_child.html | 14 + .../the-iframe-element/change_grandchild.html | 4 + .../the-iframe-element/change_parentage.html | 22 + ...t_document_changes_only_after_load_matures.html | 28 + .../cross-origin-to-whom-part-2.window.js | 59 ++ .../cross-origin-to-whom.window.js | 37 ++ .../the-iframe-element/cross_origin_child.html | 12 + .../cross_origin_grandchild.html | 11 + .../cross_origin_parentage.sub.html | 19 + ...ument-getters-return-null-for-cross-origin.html | 17 + .../the-iframe-element/historical.html | 20 + .../hittest-detached-iframe-crash.html | 9 + .../the-iframe-element/iframe-allow.html | 66 +++ .../the-iframe-element/iframe-allowfullscreen.html | 95 ++++ .../iframe-append-to-child-document.html | 17 + .../iframe-display-none-with-object.html | 16 + .../iframe-document-move-crash.html | 13 + ...rame-first-load-canceled-second-load-blank.html | 38 ++ .../iframe-initially-empty-is-updated-ref.html | 6 + .../iframe-initially-empty-is-updated.html | 21 + .../the-iframe-element/iframe-load-event.html | 43 ++ .../the-iframe-element/iframe-loading-eager.html | 52 ++ .../iframe-loading-lazy-base-url-2.html | 49 ++ .../iframe-loading-lazy-base-url-3.html | 45 ++ .../iframe-loading-lazy-base-url.html | 45 ++ ...ame-loading-lazy-in-script-disabled-iframe.html | 23 + .../iframe-loading-lazy-in-scroller-far.html | 49 ++ ...me-loading-lazy-in-scroller-horizontal-far.html | 52 ++ ...iframe-loading-lazy-in-scroller-horizontal.html | 52 ++ .../iframe-loading-lazy-in-scroller-nested-2.html | 57 ++ .../iframe-loading-lazy-in-scroller-nested-3.html | 65 +++ .../iframe-loading-lazy-in-scroller-nested-4.html | 58 ++ .../iframe-loading-lazy-in-scroller-nested-5.html | 61 ++ .../iframe-loading-lazy-in-scroller-nested.html | 57 ++ .../iframe-loading-lazy-in-scroller.html | 49 ++ .../iframe-loading-lazy-in-viewport-001.html | 14 + .../iframe-loading-lazy-in-viewport-ref.html | 2 + .../iframe-loading-lazy-load-event.html | 47 ++ ...e-loading-lazy-multiple-queued-navigations.html | 52 ++ .../iframe-loading-lazy-multiple-times.html | 69 +++ ...ame-loading-lazy-referrerpolicy-change.sub.html | 45 ++ .../iframe-loading-lazy-to-eager.html | 55 ++ .../the-iframe-element/iframe-loading-lazy.html | 110 ++++ .../iframe-modify-scrolling-attr-to-yes-ref.html | 7 + .../iframe-modify-scrolling-attr-to-yes.html | 16 + .../iframe-network-error.sub.html | 54 ++ .../the-iframe-element/iframe-nosrc.html | 26 + .../iframe-synchronously-discard.html | 32 ++ .../the-iframe-element/iframe-with-base-ref.html | 9 + .../the-iframe-element/iframe-with-base.html | 11 + .../the-iframe-element/iframe_harness.js | 27 + .../iframe_javascript_url_01.htm | 61 ++ .../iframe_navigate_ancestor-1.sub.html | 12 + .../the-iframe-element/iframe_remove_src.html | 40 ++ .../iframe_sandbox_allow_script.html | 46 ++ .../iframe_sandbox_allow_top_navigation-1.html | 24 + .../iframe_sandbox_allow_top_navigation-2.html | 23 + .../iframe_sandbox_allow_top_navigation-3.html | 28 + ...w_top_navigation_by_user_activation-manual.html | 24 + ...on_by_user_activation_without_user_gesture.html | 19 + ..._anchor_download_allow_downloads.tentative.html | 48 ++ ..._anchor_download_block_downloads.tentative.html | 73 +++ .../iframe_sandbox_block_modals-1.html | 13 + .../iframe_sandbox_block_modals-2.html | 13 + .../iframe_sandbox_block_modals-3.html | 13 + .../iframe_sandbox_block_modals-4.html | 13 + .../iframe_sandbox_navigate_ancestor-1.html | 12 + .../iframe_sandbox_navigate_ancestor-2.html | 12 + .../iframe_sandbox_navigate_descendants.html | 12 + .../iframe_sandbox_navigate_history_go_back-2.html | 16 + .../iframe_sandbox_navigate_history_go_back.html | 18 + ...iframe_sandbox_navigate_history_go_forward.html | 28 + .../iframe_sandbox_navigate_itself.html | 12 + ...ame_sandbox_navigate_other_frame_popup.sub.html | 64 +++ ...ion_download_allow_downloads.sub.tentative.html | 52 ++ ...ion_download_block_downloads.sub.tentative.html | 52 ++ .../iframe_sandbox_popups_escaping-1.html | 25 + .../iframe_sandbox_popups_escaping-2.html | 31 + .../iframe_sandbox_popups_escaping-3.html | 25 + .../iframe_sandbox_popups_helper-1.html | 16 + .../iframe_sandbox_popups_helper-2.html | 28 + .../iframe_sandbox_popups_helper-3.html | 17 + .../iframe_sandbox_popups_nonescaping-1.html | 15 + .../iframe_sandbox_popups_nonescaping-2.html | 18 + .../iframe_sandbox_popups_nonescaping-3.html | 15 + ...ow_open_download_allow_downloads.tentative.html | 29 + ...ow_open_download_block_downloads.tentative.html | 29 + .../the-iframe-element/move_iframe_in_dom_01.html | 21 + .../the-iframe-element/move_iframe_in_dom_02.html | 23 + .../the-iframe-element/move_iframe_in_dom_03.html | 21 + .../the-iframe-element/move_iframe_in_dom_04.html | 23 + .../multiple-iframes-with-allow-scripts-crash.html | 16 + .../the-iframe-element/resources/empty.html | 1 + .../the-iframe-element/resources/hello-world.html | 11 + .../resources/iframe-loading-lazy-in-viewport.html | 2 + .../resources/post-origin-to-opener.html | 3 + .../resources/sandbox-top-navigation-helper.js | 76 +++ .../the-iframe-element/resources/subframe.html | 4 + .../resources/unload-reporter.html | 8 + .../the-iframe-element/same_origin_child.html | 12 + .../the-iframe-element/same_origin_grandchild.html | 11 + .../the-iframe-element/same_origin_parentage.html | 19 + .../sandbox-ascii-case-insensitive.html | 41 ++ ...nherit-to-blank-document-unsandboxed-frame.html | 87 +++ ...dbox-inherit-to-blank-document-unsandboxed.html | 100 ++++ ...erit-to-blank-document-unsandboxed.html.headers | 1 + .../sandbox-toggle-in-inactive-document-crash.html | 9 + ...ion-child-special-cases.tentative.sub.window.js | 47 ++ ...ox-top-navigation-child.tentative.sub.window.js | 56 ++ ...ion-escalate-privileges.tentative.sub.window.js | 63 +++ ...p-navigation-grandchild.tentative.sub.window.js | 50 ++ .../the-iframe-element/sandbox_001.htm | 32 ++ .../the-iframe-element/sandbox_002.htm | 25 + .../the-iframe-element/sandbox_003-manual.htm | 32 ++ .../the-iframe-element/sandbox_004.htm | 27 + .../the-iframe-element/sandbox_005.htm | 33 ++ .../the-iframe-element/sandbox_006-manual.htm | 37 ++ .../the-iframe-element/sandbox_007-manual.htm | 37 ++ .../the-iframe-element/sandbox_008-manual.htm | 37 ++ .../the-iframe-element/sandbox_010-manual.htm | 37 ++ .../the-iframe-element/sandbox_011.htm | 65 +++ .../the-iframe-element/sandbox_012.htm | 34 ++ .../the-iframe-element/sandbox_013.htm | 36 ++ .../the-iframe-element/sandbox_014.htm | 34 ++ .../the-iframe-element/sandbox_015.htm | 34 ++ .../the-iframe-element/sandbox_016.htm | 33 ++ .../the-iframe-element/sandbox_017.htm | 34 ++ .../the-iframe-element/sandbox_018.htm | 34 ++ .../the-iframe-element/sandbox_019.htm | 34 ++ .../the-iframe-element/sandbox_020-manual.htm | 34 ++ .../the-iframe-element/sandbox_021-manual.htm | 44 ++ .../the-iframe-element/sandbox_022-manual.htm | 37 ++ .../the-iframe-element/sandbox_023.htm | 33 ++ .../the-iframe-element/sandbox_024.htm | 32 ++ .../the-iframe-element/sandbox_025.htm | 30 + .../the-iframe-element/sandbox_026.htm | 32 ++ .../the-iframe-element/sandbox_027.htm | 32 ++ .../the-iframe-element/sandbox_028.htm | 33 ++ .../the-iframe-element/sandbox_029.htm | 32 ++ .../the-iframe-element/sandbox_030.htm | 31 + .../the-iframe-element/sandbox_031.htm | 32 ++ .../the-iframe-element/sandbox_032.htm | 32 ++ .../src-repeated-in-ancestor.html | 138 +++++ .../the-iframe-element/srcdoc-anchor.html | 17 + .../the-iframe-element/srcdoc-attribute-reset.html | 33 ++ .../the-iframe-element/srcdoc_change_hash.html | 68 +++ .../srcdoc_process_attributes.html | 76 +++ .../embedded-content/the-iframe-element/stash.py | 5 + .../the-iframe-element/support/blank.htm | 1 + .../support/document-with-embedded-svg.html | 9 + .../the-iframe-element/support/download_stash.py | 32 ++ .../iframe-that-checks-contentDocument.html | 3 + .../support/iframe-that-opens-modals.html | 23 + ...rame-that-performs-top-navigation-on-popup.html | 14 + ...top-navigation-without-user-gesture-failed.html | 16 + .../iframe-that-performs-top-navigation.html | 20 + .../iframe-that-send-message-to-the-opener.html | 8 + ...ate-parent-and-sends-result-to-grandparent.html | 11 + .../iframe-tried-to-be-navigated-by-history.html | 18 + .../iframe-tried-to-be-navigated-by-its-child.html | 4 + .../iframe-trying-to-navigate-its-child.html | 11 + .../support/iframe-trying-to-navigate-itself.html | 11 + .../iframe-which-content-height-equals-400px.html | 4 + .../support/iframe-with-object.html | 10 + .../support/iframe_sandbox_001.htm | 11 + .../support/iframe_sandbox_002.htm | 21 + .../support/iframe_sandbox_003.htm | 12 + .../support/iframe_sandbox_004.htm | 11 + .../support/iframe_sandbox_006.htm | 12 + .../support/iframe_sandbox_007.htm | 12 + .../support/iframe_sandbox_008.htm | 9 + .../support/iframe_sandbox_010.htm | 9 + .../support/iframe_sandbox_012.htm | 13 + .../support/iframe_sandbox_020.htm | 28 + .../support/iframe_sandbox_020a.htm | 13 + .../support/iframe_sandbox_021.htm | 28 + .../support/iframe_sandbox_021a.htm | 13 + .../support/iframe_sandbox_022.htm | 11 + .../support/iframe_sandbox_023.htm | 15 + .../support/iframe_sandbox_024.htm | 13 + .../support/iframe_sandbox_026.htm | 12 + .../support/iframe_sandbox_027.htm | 21 + .../support/iframe_sandbox_028.htm | 20 + .../support/iframe_sandbox_029.htm | 19 + .../support/iframe_sandbox_031.htm | 19 + .../support/iframe_sandbox_032.htm | 27 + .../support/iframe_sandbox_block_modals.js | 18 + .../support/iframe_sandbox_download_helper.js | 37 ++ .../support/load-into-the-iframe.html | 24 + .../support/navigation-changed-iframe.html | 14 + .../the-iframe-element/support/sandbox.pdf | Bin 0 -> 80990 bytes .../the-iframe-element/support/sandbox.pdf.headers | 1 + .../support/sandbox_allow_script.html | 8 + .../the-iframe-element/support/sandbox_helper.js | 14 + .../the-iframe-element/support/standalone-fail.htm | 9 + .../support/standalone-iframe-content.htm | 9 + .../the-iframe-element/support/standalone-pass.htm | 9 + .../the-iframe-element/support/svg.svg | 1 + .../embedded-content/the-img-element/3.jpg | Bin 0 -> 91072 bytes .../404-response-with-actual-image-data.html | 18 + .../404-response-with-actual-image-data.py | 4 + .../the-img-element/Image-constructor.html | 42 ++ .../the-img-element/adopt-from-image-document.html | 16 + .../embedded-content/the-img-element/adoption.html | 91 +++ .../already-loaded-image-sync-width.html | 20 + .../the-img-element/available-images-onload.html | 33 ++ .../the-img-element/available-images-ref.html | 2 + .../the-img-element/available-images.html | 17 + ...low-viewport-image-loading-lazy-load-event.html | 69 +++ .../embedded-content/the-img-element/brokenimg.jpg | 4 + .../current-pixel-density/basic.html | 37 ++ .../current-pixel-density/error.html | 31 + .../the-img-element/currentSrc-blob-cache.html | 45 ++ .../embedded-content/the-img-element/data-url.html | 24 + .../decode/image-decode-iframe.html | 54 ++ .../decode/image-decode-image-document.html | 25 + .../image-decode-path-changes-svg.tentative.html | 82 +++ .../decode/image-decode-path-changes.html | 121 ++++ .../decode/image-decode-picture.html | 133 +++++ .../decode/image-decode-svg.tentative.html | 128 +++++ ...age-decode-with-quick-attach-svg.tentative.html | 23 + .../decode/image-decode-with-quick-attach.html | 26 + .../the-img-element/decode/image-decode.html | 138 +++++ .../the-img-element/delay-load-event-detached.html | 30 + ...elay-load-event-until-move-to-empty-source.html | 25 + .../the-img-element/delay-load-event.html | 26 + .../disconnected-image-loading-lazy.html | 32 ++ .../the-img-element/document-adopt-base-url.html | 14 + .../the-img-element/document-base-url-ref.html | 5 + .../the-img-element/document-base-url.html | 7 + .../the-img-element/document-destroyed-crash.html | 18 + .../environment-changes/iframed.sub.html | 78 +++ .../environment-changes/viewport-change.html | 65 +++ .../historical-progress-event.window.js | 16 + .../embedded-content/the-img-element/image-1.jpg | Bin 0 -> 389245 bytes .../the-img-element/image-base-url.html | 70 +++ .../image-compositing-change-ref.html | 10 + .../the-img-element/image-compositing-change.html | 31 + .../image-compositing-large-scale-change-ref.html | 16 + .../image-compositing-large-scale-change.html | 36 ++ .../the-img-element/image-loading-eager.html | 47 ++ .../image-loading-lazy-available.html | 30 + .../image-loading-lazy-base-url-2.html | 52 ++ .../image-loading-lazy-base-url.html | 51 ++ .../image-loading-lazy-below-viewport-dynamic.html | 45 ++ .../image-loading-lazy-clip-path-ref.html | 2 + .../image-loading-lazy-clip-path.html | 14 + .../image-loading-lazy-crossorigin-change.sub.html | 40 ++ .../image-loading-lazy-data-url-to-https-ref.html | 2 + .../image-loading-lazy-data-url-to-https.html | 24 + .../image-loading-lazy-different-crossorigin.html | 63 +++ .../image-loading-lazy-empty-src.html | 25 + ...oading-lazy-in-cross-origin-iframe-001.sub.html | 44 ++ ...oading-lazy-in-cross-origin-iframe-002.sub.html | 46 ++ ...age-loading-lazy-in-script-disabled-iframe.html | 23 + .../image-loading-lazy-in-scroller-far.html | 49 ++ ...ge-loading-lazy-in-scroller-horizontal-far.html | 52 ++ .../image-loading-lazy-in-scroller-horizontal.html | 52 ++ .../image-loading-lazy-in-scroller-nested-2.html | 57 ++ .../image-loading-lazy-in-scroller-nested-3.html | 65 +++ .../image-loading-lazy-in-scroller-nested-4.html | 58 ++ .../image-loading-lazy-in-scroller-nested-5.html | 61 ++ .../image-loading-lazy-in-scroller-nested.html | 57 ++ .../image-loading-lazy-in-scroller.html | 49 ++ .../image-loading-lazy-in-viewport-dynamic.html | 40 ++ .../image-loading-lazy-move-document.html | 38 ++ ...ding-lazy-move-into-script-disabled-iframe.html | 29 + .../image-loading-lazy-multicol.html | 44 ++ .../image-loading-lazy-multiple-times.html | 60 ++ .../image-loading-lazy-negative-margin.html | 61 ++ ...age-loading-lazy-referrerpolicy-change.sub.html | 46 ++ .../image-loading-lazy-relevant-mutations.html | 83 +++ .../image-loading-lazy-slow-aspect-ratio-ref.html | 2 + .../image-loading-lazy-slow-aspect-ratio.html | 21 + .../image-loading-lazy-slow-ref.html | 2 + .../the-img-element/image-loading-lazy-slow.html | 22 + .../the-img-element/image-loading-lazy-srcset.html | 38 ++ ...image-loading-lazy-subframe-detached-crash.html | 26 + .../image-loading-lazy-to-eager.html | 55 ++ ...-loading-lazy-use-list-of-available-images.html | 62 ++ .../image-loading-lazy-zero-intersection-area.html | 19 + .../the-img-element/image-loading-lazy.html | 112 ++++ .../image-loading-subpixel-clip-ref.html | 22 + .../image-loading-subpixel-clip.html | 25 + .../image-srcdoc-relative-uri-print-ref.html | 8 + .../image-srcdoc-relative-uri-print.html | 6 + .../embedded-content/the-img-element/image.png | Bin 0 -> 268 bytes .../img-created-in-active-document-crash.html | 6 + .../the-img-element/img-picture-ancestor.html | 50 ++ .../img-src-in-synthetic-document.html | 16 + .../img-with-containment-and-size-ref.html | 8 + .../img-with-containment-and-size.html | 24 + .../the-img-element/img.complete.html | 200 +++++++ .../the-img-element/invalid-src.html | 32 ++ .../the-img-element/invisible-image.html | 78 +++ .../ismap/img-ismap-coordinates-iframe-after.html | 21 + .../ismap/img-ismap-coordinates-iframe-before.html | 21 + .../ismap/img-ismap-coordinates-iframe-inside.html | 21 + .../ismap/img-ismap-coordinates-manual.html | 78 +++ ...-coalesce-in-flight-requests.sub.tentative.html | 49 ++ .../list-of-available-images-matching.https.html | 68 +++ .../the-img-element/move-element-and-scroll.html | 36 ++ .../the-img-element/natural-size-orientation.html | 45 ++ .../the-img-element/non-active-document.html | 52 ++ .../the-img-element/nonexistent-image.html | 21 + ...rendered-below-viewport-image-loading-lazy.html | 63 +++ .../not-rendered-dimension-getter.html | 22 + .../not-rendered-image-loading-lazy.html | 49 ++ .../the-img-element/null-image-source.html | 30 + .../the-img-element/picture-loading-lazy.html | 64 +++ .../the-img-element/relevant-mutations-lazy.html | 78 +++ .../the-img-element/relevant-mutations.html | 628 +++++++++++++++++++++ .../the-img-element/remove-element-and-scroll.html | 32 ++ .../the-img-element/resources/blue-10.png | Bin 0 -> 76 bytes .../the-img-element/resources/cat.jpg | Bin 0 -> 21474 bytes .../the-img-element/resources/green.png | Bin 0 -> 91 bytes .../the-img-element/resources/image-and-stash.py | 44 ++ .../image-loading-lazy-below-viewport.html | 22 + .../resources/image-loading-lazy-in-viewport.html | 20 + .../the-img-element/resources/image.png | Bin 0 -> 11493 bytes .../the-img-element/resources/newwindow.html | 2 + .../the-img-element/resources/red.png | Bin 0 -> 510 bytes .../resources/referrer-checker-img.py | 14 + .../the-img-element/resources/sw.js | 20 + .../the-img-element/resources/sw.js.headers | 1 + .../responsive-image-select-print-ref.html | 4 + .../responsive-image-select-print.html | 12 + ...elow-viewport-image-lazy-loading-in-iframe.html | 32 ++ .../sizes/implicit-sizes-ignores-width.html | 19 + .../parse-a-sizes-attribute-display-none.html | 7 + .../sizes/parse-a-sizes-attribute-quirks-mode.html | 7 + .../parse-a-sizes-attribute-standards-mode.html | 7 + .../parse-a-sizes-attribute-width-1000px.html | 7 + .../sizes/reference/sizes-auto-rendering-ref.html | 8 + .../sizes/sizes-auto-rendering-2.html | 25 + .../sizes/sizes-auto-rendering-3.html | 25 + .../sizes/sizes-auto-rendering-dynamic.html | 38 ++ .../sizes/sizes-auto-rendering.html | 26 + .../the-img-element/sizes/sizes-auto.html | 153 +++++ .../sizes/sizes-dynamic-001-ref.html | 4 + .../the-img-element/sizes/sizes-dynamic-001.html | 20 + .../the-img-element/sizes/sizes-dynamic-002.html | 33 ++ .../sizes/support/parse-a-sizes-attribute.js | 29 + .../sizes/support/sizes-iframed.sub.html | 186 ++++++ .../the-img-element/source-media-outside-doc.html | 50 ++ .../srcset/avoid-reload-on-resize.html | 20 + .../the-img-element/srcset/common.js | 25 + .../srcset/parse-a-srcset-attribute.html | 245 ++++++++ .../the-img-element/srcset/resources/image.png | Bin 0 -> 268 bytes .../srcset/resources/image.png.headers | 3 + .../the-img-element/srcset/resources/resized.html | 2 + .../srcset/select-an-image-source.html | 20 + .../srcset/srcset-media-dynamic.html | 25 + .../the-img-element/support/external-sheet.svg | 4 + .../the-img-element/support/red-bg.css | 2 + .../the-img-element/support/relevant-mutations.js | 15 + .../svg-img-with-external-stylesheet-ref.html | 4 + .../svg-img-with-external-stylesheet.html | 6 + .../the-img-element/update-media.html | 32 ++ .../the-img-element/update-src-complete.html | 25 + .../current-request-microtask.html | 38 ++ .../update-the-image-data/fail-to-resolve.html | 25 + .../the-img-element/update-the-source-set.html | 140 +++++ .../the-img-element/usemap-casing.html | 93 +++ .../block-object-with-ruby-crash.html | 11 + ...ument-getters-return-null-for-cross-origin.html | 17 + .../the-object-element/historical.html | 33 ++ .../the-object-element/object-attributes.html | 60 ++ ...-document-with-null-browsing-context-crash.html | 11 + .../the-object-element/object-events.html | 81 +++ ...allback-failed-cross-origin-navigation.sub.html | 68 +++ .../the-object-element/object-handler.html | 33 ++ .../object-ignored-in-media-element.html | 22 + .../object-in-display-none-load-event.html | 14 + .../object-in-object-fallback-2.html | 56 ++ .../the-object-element/object-param-url-ref.html | 39 ++ .../the-object-element/object-param-url.html | 41 ++ .../object-remove-param-crash.html | 11 + .../object-setcustomvalidity.html | 17 + .../embedded-content/the-object-element/test0.html | 10 + .../embedded-content/the-object-element/test1.html | 9 + .../the-object-element/usemap-casing.html | 82 +++ .../the-video-element/intrinsic_sizes.htm | 71 +++ .../the-video-element/resize-during-playback.html | 42 ++ .../video-import-to-inactive-document-crash.html | 7 + .../video-poster-shown-preload-auto-ref.html | 5 + .../video-poster-shown-preload-auto.html | 10 + .../the-video-element/video-tabindex.html | 18 + .../the-video-element/video_content-ref.htm | 12 + .../the-video-element/video_content_image.htm | 16 + .../the-video-element/video_content_text.htm | 16 + .../the-video-element/video_crash_empty_src.html | 29 + .../the-video-element/video_dynamic_poster-ref.htm | 5 + .../video_dynamic_poster_absolute.htm | 12 + .../video_dynamic_poster_relative.htm | 12 + .../video_initially_paused-ref.html | 8 + .../the-video-element/video_initially_paused.html | 21 + .../video_size_preserved_after_ended.html | 30 + .../tests/html/semantics/forms/META.yml | 2 + .../dirname-ltr.html | 30 + .../dirname-only-if-applies.html | 80 +++ .../dirname-rtl-auto.html | 31 + .../dirname-rtl-inherited.html | 32 ++ .../dirname-rtl-manual.html | 29 + .../disabled-elements-01.html | 84 +++ .../formAction_document_address.html | 93 +++ .../formaction.html | 42 ++ .../resources/dirname-iframe.html | 4 + .../resources/dirname.js | 12 + .../semantics/forms/beforeinput.tentative.html | 58 ++ .../constraints/form-validation-checkValidity.html | 145 +++++ .../form-validation-reportValidity.html | 145 +++++ .../constraints/form-validation-validate.html | 127 +++++ .../form-validation-validity-badInput.html | 46 ++ .../form-validation-validity-customError.html | 48 ++ .../form-validation-validity-patternMismatch.html | 53 ++ ...alidation-validity-rangeOverflow-weekmonth.html | 47 ++ .../form-validation-validity-rangeOverflow.html | 89 +++ ...lidation-validity-rangeUnderflow-weekmonth.html | 47 ++ .../form-validation-validity-rangeUnderflow.html | 87 +++ .../form-validation-validity-stepMismatch.html | 81 +++ .../form-validation-validity-tooLong.html | 50 ++ .../form-validation-validity-tooShort.html | 52 ++ .../form-validation-validity-typeMismatch.html | 41 ++ .../form-validation-validity-valid-weekmonth.html | 37 ++ .../form-validation-validity-valid.html | 110 ++++ ...validation-validity-valueMissing-weekmonth.html | 55 ++ .../form-validation-validity-valueMissing.html | 147 +++++ .../form-validation-willValidate-datalist.html | 67 +++ .../constraints/form-validation-willValidate.html | 96 ++++ .../infinite_backtracking.tentative.html | 12 + .../forms/constraints/input-maxlength-emoji.html | 15 + ...ut-number-validity-dynamic-value-no-change.html | 18 + .../constraints/input-pattern-dynamic-value.html | 17 + .../forms/constraints/inputwillvalidate.html | 26 + .../number-input-lang-validationMessage-crash.html | 15 + .../forms/constraints/radio-valueMissing.html | 90 +++ .../forms/constraints/reportValidity-crash.html | 37 ++ .../forms/constraints/support/validator.js | 481 ++++++++++++++++ .../tooLong-input-email-delete-manual.html | 30 + .../tooLong-input-password-delete-manual.html | 30 + .../tooLong-input-search-delete-manual.html | 30 + .../tooLong-input-tel-delete-manual.html | 30 + .../tooLong-input-text-delete-manual.html | 30 + .../tooLong-input-url-delete-manual.html | 30 + .../tooLong-textarea-delete-manual.html | 30 + .../tooShort-input-email-add-manual.html | 30 + .../tooShort-input-password-add-manual.html | 30 + .../tooShort-input-search-add-manual.html | 30 + .../constraints/tooShort-input-tel-add-manual.html | 30 + .../tooShort-input-text-add-manual.html | 30 + .../constraints/tooShort-input-url-add-manual.html | 30 + .../constraints/tooShort-textarea-add-manual.html | 30 + .../association.window.js | 7 + .../forms/form-control-infrastructure/form.html | 91 +++ .../form_attribute.html | 233 ++++++++ .../form_owner_and_table.html | 50 ++ .../form_owner_and_table_2.html | 45 ++ .../form_owner_and_table_3.html | 17 + .../form-submission-0/FormDataEvent.window.js | 21 + .../forms/form-submission-0/SubmitEvent.window.js | 41 ++ .../constructing-form-data-set.html | 161 ++++++ .../forms/form-submission-0/enctypes-helper.js | 187 ++++++ .../form-data-set-empty-file.window.js | 99 ++++ .../form-submission-0/form-data-set-usv-form.html | 27 + .../forms/form-submission-0/form-data-set-usv.html | 52 ++ .../form-submission-0/form-double-submit-2.html | 49 ++ .../form-submission-0/form-double-submit-3.html | 50 ++ .../form-double-submit-default-action.html | 108 ++++ .../form-double-submit-multiple-targets.html | 37 ++ .../form-double-submit-preventdefault-click.html | 67 +++ .../form-double-submit-preventdefault.html | 59 ++ .../form-double-submit-requestsubmit.html | 142 +++++ ...rm-double-submit-to-different-origin-frame.html | 63 +++ .../form-submission-0/form-double-submit.html | 50 ++ .../semantics/forms/form-submission-0/form-echo.py | 7 + .../form-submission-algorithm.html | 165 ++++++ .../form-submit-iframe-then-location-navigate.html | 23 + .../forms/form-submission-0/getactionurl.html | 11 + .../forms/form-submission-0/historical.window.js | 19 + .../implicit-submission.optional.html | 47 ++ .../jsurl-form-submit.tentative.html | 32 ++ .../jsurl-navigation-then-form-submit.html | 30 + .../form-submission-0/multipart-formdata.window.js | 357 ++++++++++++ .../form-submission-0/newline-normalization.html | 112 ++++ ...parent-form-during-planned-navigation-task.html | 15 + .../request-submit-activation.html | 30 + .../form-submission-0/resources/file-submission.py | 10 + .../form-submission-0/resources/form-submission.py | 12 + .../forms/form-submission-0/resources/form.html | 4 + .../resources/getactionurl-iframe.html | 14 + .../resources/jsurl-form-submit-iframe.html | 12 + .../form-submission-0/resources/location.html | 4 + .../form-submission-0/resources/targetted-form.js | 38 ++ .../form-submission-0/submission-checks.window.js | 62 ++ .../form-submission-0/submit-entity-body.html | 114 ++++ .../forms/form-submission-0/submit-file.sub.html | 25 + .../forms/form-submission-0/text-plain.window.js | 223 ++++++++ .../forms/form-submission-0/url-encoded.html | 51 ++ .../forms/form-submission-0/urlencoded2.window.js | 223 ++++++++ .../form-target-iframe-helper.py | 3 + .../form-submission-target/form-target-iframe.html | 29 + .../form-target-request-header.html | 31 + .../form-submission-target/rel-base-target.html | 13 + .../form-submission-target/rel-button-target.html | 12 + .../form-submission-target/rel-form-target.html | 12 + .../form-submission-target/rel-input-target.html | 13 + .../form-submission-target/resources/endpoint.html | 11 + .../resources/form-target-request-header-helper.py | 14 + .../form-submission-target/resources/reltester.js | 82 +++ .../semantics/forms/historical-search-event.html | 21 + .../tests/html/semantics/forms/historical.html | 97 ++++ .../forms/input-change-event-properties.html | 86 +++ .../forms/resetting-a-form/reset-event.html | 18 + .../forms/resetting-a-form/reset-form-2.html | 61 ++ .../resetting-a-form/reset-form-event-realm.html | 38 ++ .../forms/resetting-a-form/reset-form.html | 118 ++++ .../support/reset-form-event-realm.html | 3 + .../forms/textfieldselection/defaultSelection.html | 28 + .../forms/textfieldselection/original-id.json | 1 + .../forms/textfieldselection/select-event.html | 154 +++++ .../selection-after-content-change.html | 144 +++++ .../selection-not-application-textarea.html | 40 ++ .../selection-not-application.html | 112 ++++ .../selection-start-end-extra.html | 153 +++++ .../textfieldselection/selection-start-end.html | 206 +++++++ .../selection-value-interactions.html | 127 +++++ .../forms/textfieldselection/selection.html | 206 +++++++ .../textfieldselection/setSelectionRange.html | 18 + .../textarea-selection-while-parsing.xhtml | 20 + .../textfieldselection-setRangeText.html | 155 +++++ .../textfieldselection-setSelectionRange.html | 304 ++++++++++ .../forms/the-button-element/active-onblur.html | 33 ++ .../the-button-element/button-activate-frame.html | 3 + .../button-activate-keyup-prevented.html | 38 ++ .../forms/the-button-element/button-activate.html | 17 + .../the-button-element/button-checkvalidity.html | 44 ++ .../the-button-element/button-click-submits.html | 232 ++++++++ .../forms/the-button-element/button-events.html | 166 ++++++ .../forms/the-button-element/button-labels.html | 38 ++ .../the-button-element/button-menu-historical.html | 25 + .../button-setcustomvalidity.html | 17 + .../the-button-element/button-submit-children.html | 58 ++ .../button-submit-remove-children-jssubmit.html | 33 ++ .../button-submit-remove-children.html | 32 ++ .../button-submit-remove-jssubmit.html | 36 ++ ...ton-type-enumerated-ascii-case-insensitive.html | 34 ++ .../forms/the-button-element/button-type.html | 41 ++ .../button-untrusted-key-event.html | 112 ++++ .../the-button-element/button-validation.html | 29 + .../button-validationmessage.html | 40 ++ .../forms/the-button-element/button-validity.html | 40 ++ .../button-willvalidate-readonly-attribute.html | 14 + .../the-button-element/button-willvalidate.html | 40 ++ .../the-datalist-element/datalistoptions.html | 43 ++ .../remove-datalist-crash.html | 11 + .../the-fieldset-element/HTMLFieldSetElement.html | 54 ++ .../the-fieldset-element/accessibility/README.md | 12 + .../accessibility/aria-manual.html | 7 + .../accessibility/baseline-manual.html | 8 + .../fieldset-appearance-none-manual.html | 11 + .../fieldset-display-contents-manual.html | 11 + .../fieldset-display-none-manual.html | 11 + .../fieldset-div-display-contents-manual.html | 13 + .../accessibility/fieldset-role-none-manual.html | 8 + .../fieldset-role-presentation-manual.html | 8 + .../fieldset-visibility-collapse-manual.html | 11 + .../fieldset-visibility-hidden-manual.html | 12 + .../accessibility/flexbox-manual.html | 13 + .../accessibility/grid-manual.html | 12 + .../accessibility/legend-abspos-manual.html | 11 + .../legend-child-display-none-manual.html | 11 + .../legend-child-visibility-hidden-manual.html | 11 + .../legend-display-contents-manual.html | 11 + .../accessibility/legend-display-none-manual.html | 11 + .../accessibility/legend-float-manual.html | 11 + .../accessibility/legend-role-group-manual.html | 8 + .../legend-visibility-collapse-manual.html | 11 + .../legend-visibility-hidden-manual.html | 11 + .../accessibility/multiple-legends-manual.html | 10 + .../accessibility/role-manual.html | 8 + .../accessibility/shadow-dom-manual.html | 32 ++ .../title-attribute-and-empty-legend-manual.html | 8 + .../forms/the-fieldset-element/disabled-001.html | 78 +++ .../forms/the-fieldset-element/disabled-002.xhtml | 25 + .../forms/the-fieldset-element/disabled-003.html | 39 ++ .../fieldset-checkvalidity.html | 45 ++ .../fieldset-intrinsic-size.html | 74 +++ .../fieldset-setcustomvalidity.html | 17 + .../fieldset-validationmessage.html | 41 ++ .../the-fieldset-element/fieldset-validity.html | 41 ++ .../fieldset-willvalidate.html | 41 ++ .../form-action-in-inactive-document-crash.html | 6 + .../form-action-reflection-with-base-url.html | 36 ++ .../the-form-element/form-action-reflection.html | 35 ++ .../form-action-submission-with-base-url.html | 56 ++ .../the-form-element/form-action-submission.html | 56 ++ .../forms/the-form-element/form-action.html | 43 ++ .../forms/the-form-element/form-autocomplete.html | 130 +++++ .../forms/the-form-element/form-checkvalidity.html | 47 ++ .../the-form-element/form-elements-filter.html | 192 +++++++ .../form-elements-interfaces-01.html | 20 + .../the-form-element/form-elements-matches.html | 46 ++ .../form-elements-nameditem-01.html | 43 ++ .../form-elements-nameditem-02.html | 28 + .../the-form-element/form-elements-sameobject.html | 20 + .../form-indexed-element-shadow.html | 26 + .../the-form-element/form-indexed-element.html | 45 ++ .../forms/the-form-element/form-length.html | 38 ++ .../forms/the-form-element/form-nameditem.html | 418 ++++++++++++++ .../forms/the-form-element/form-requestsubmit.html | 215 +++++++ .../resources/form-no-action-with-base.html | 19 + .../the-form-element/resources/form-no-action.html | 18 + .../resources/form-with-action-and-base.sub.html | 19 + .../resources/form-with-action.sub.html | 18 + .../resources/target/form-action-url-target.html | 5 + .../anchor-active-contenteditable.html | 25 + .../anchor-contenteditable-navigate.html | 25 + .../the-input-element/auto-direction-dynamic.html | 12 + .../the-input-element/auto-direction-ref.html | 2 + .../semantics/forms/the-input-element/button.html | 66 +++ .../the-input-element/change-to-empty-value.html | 31 + .../checkable-active-onblur-with-click.html | 158 ++++++ .../the-input-element/checkable-active-onblur.html | 52 ++ .../checkable-active-space-key-being-disabled.html | 90 +++ ...eckable-active-space-key-prevented-default.html | 55 ++ ...checkable-active-space-key-untrusted-event.html | 48 ++ .../the-input-element/checkbox-click-events.html | 109 ++++ .../forms/the-input-element/checkbox.html | 149 +++++ .../forms/the-input-element/checked.xhtml | 19 + .../semantics/forms/the-input-element/clone.html | 150 +++++ .../forms/the-input-element/cloning-steps.html | 64 +++ .../semantics/forms/the-input-element/color.html | 45 ++ .../semantics/forms/the-input-element/date.html | 90 +++ .../datetime-local-trailing-zeros.html | 14 + .../forms/the-input-element/datetime-local.html | 42 ++ .../the-input-element/datetime-weekmonth.html | 51 ++ .../forms/the-input-element/datetime.html | 60 ++ .../the-input-element/defaultValue-clobbering.html | 36 ++ .../disabled-click-picker-manual.html | 17 + .../forms/the-input-element/email-set-value.html | 30 + .../semantics/forms/the-input-element/email.html | 66 +++ .../the-input-element/event-select-manual.html | 39 ++ .../forms/the-input-element/file-manual.html | 30 + .../semantics/forms/the-input-element/files.html | 83 +++ .../focus-dynamic-type-change-on-blur.html | 61 ++ .../focus-dynamic-type-change.html | 55 ++ .../hidden-charset-case-sensitive-child.html | 5 + .../hidden-charset-case-sensitive.html | 30 + .../semantics/forms/the-input-element/hidden.html | 74 +++ .../the-input-element/image-click-form-data.html | 28 + .../forms/the-input-element/image01-ref.html | 5 + .../semantics/forms/the-input-element/image01.html | 7 + .../the-input-element/input-checkvalidity.html | 44 ++ .../input-disabled-fieldset-dynamic.html | 38 ++ .../input-form-detach-style-crash.html | 17 + .../forms/the-input-element/input-height.html | 42 ++ ...nput-importNode-to-detached-document-crash.html | 11 + .../forms/the-input-element/input-labels.html | 49 ++ .../forms/the-input-element/input-list.html | 67 +++ .../input-seconds-leading-zeroes.html | 52 ++ .../the-input-element/input-setcustomvalidity.html | 17 + .../input-stepdown-weekmonth.html | 22 + .../forms/the-input-element/input-stepdown.html | 43 ++ .../the-input-element/input-stepup-weekmonth.html | 22 + .../forms/the-input-element/input-stepup.html | 44 ++ .../input-submit-remove-jssubmit.html | 36 ++ .../forms/the-input-element/input-type-button.html | 51 ++ .../input-type-change-empty-crash.html | 8 + .../the-input-element/input-type-change-value.html | 33 ++ .../input-type-checkbox-switch.tentative.window.js | 19 + .../the-input-element/input-type-checkbox.html | 60 ++ .../input-type-number-rtl-invalid-crash.html | 11 + .../forms/the-input-element/input-types.js | 24 + .../input-untrusted-key-event.html | 225 ++++++++ .../the-input-element/input-validationmessage.html | 40 ++ .../forms/the-input-element/input-validity.html | 40 ++ .../input-value-invalidstateerr.html | 41 ++ .../input-valueasdate-invalidstateerr.html | 41 ++ .../input-valueasdate-stepping.html | 83 +++ .../forms/the-input-element/input-valueasdate.html | 108 ++++ .../input-valueasnumber-invalidstateerr.html | 39 ++ .../input-valueasnumber-stepping.html | 94 +++ .../the-input-element/input-valueasnumber.html | 151 +++++ .../forms/the-input-element/input-whitespace.html | 34 ++ .../forms/the-input-element/input-width.html | 42 ++ .../the-input-element/input-willvalidate.html | 40 ++ .../invalid-datalist-options-crash.html | 6 + .../forms/the-input-element/large-step-crash.html | 9 + .../forms/the-input-element/maxlength-manual.html | 37 ++ .../forms/the-input-element/maxlength-number.html | 19 + .../forms/the-input-element/maxlength.html | 55 ++ .../forms/the-input-element/minlength.html | 55 ++ .../semantics/forms/the-input-element/month.html | 100 ++++ .../multiline-placeholder-cr.html | 1 + .../multiline-placeholder-crlf.html | 19 + .../multiline-placeholder-ref.html | 5 + .../the-input-element/multiline-placeholder.html | 19 + .../number-constraint-validation.html | 42 ++ .../forms/the-input-element/number-disabled.html | 18 + .../semantics/forms/the-input-element/number.html | 57 ++ .../the-input-element/password-delete-space.html | 20 + .../forms/the-input-element/password.html | 79 +++ .../forms/the-input-element/pattern_attribute.html | 117 ++++ .../the-input-element/placeholder-update-ref.html | 2 + .../the-input-element/placeholder-update.html | 14 + .../radio-disconnected-group-owner.html | 168 ++++++ .../radio-double-activate-pseudo.html | 22 + .../the-input-element/radio-groupname-case.html | 83 +++ .../the-input-element/radio-input-cancel.html | 41 ++ .../radio-keyboard-navigation-order.html | 70 +++ .../forms/the-input-element/radio-morphed.html | 17 + .../the-input-element/radio-multiple-selected.html | 21 + .../semantics/forms/the-input-element/radio.html | 351 ++++++++++++ .../semantics/forms/the-input-element/range-2.html | 43 ++ .../range-intrinsic-size-ref.html | 97 ++++ .../the-input-element/range-intrinsic-size.html | 85 +++ .../range-list-added-repaint.html | 19 + .../range-list-change-repaint.html | 24 + .../range-list-duplicate-id-repaint.html | 26 + .../the-input-element/range-list-nonexistent.html | 20 + .../range-option-add-repaint.html | 21 + .../range-option-remove-repaint.html | 20 + .../range-option-value-change-repaint.html | 20 + ...range-restore-oninput-onchange-event.https.html | 52 ++ .../range-setattribute-value-ref.html | 7 + .../range-setattribute-value.html | 27 + .../range-tick-marks-01-notref.html | 3 + .../the-input-element/range-tick-marks-01.html | 13 + .../the-input-element/range-tick-marks-02-ref.html | 14 + .../the-input-element/range-tick-marks-02.html | 14 + .../range-tick-marks-03-notref.html | 9 + .../the-input-element/range-tick-marks-03.html | 14 + .../the-input-element/range-tick-marks-04-ref.html | 7 + .../the-input-element/range-tick-marks-04.html | 15 + .../the-input-element/range-tick-marks-05-ref.html | 7 + .../the-input-element/range-tick-marks-05.html | 14 + .../semantics/forms/the-input-element/range.html | 245 ++++++++ .../the-input-element/required_attribute.html | 34 ++ .../semantics/forms/the-input-element/reset.html | 113 ++++ .../resources/image-submit-click.html | 15 + .../the-input-element/resources/loadresolver.html | 6 + .../resources/range-restore-events.html | 14 + .../resources/range-restore-events.html.headers | 1 + .../resources/show-picker-child-iframe.html | 26 + .../resources/text-restore-events.html | 14 + .../resources/text-restore-events.html.headers | 1 + .../forms/the-input-element/search_input.html | 35 ++ .../forms/the-input-element/selection-pointer.html | 56 ++ .../the-input-element/selection-weekmonth.html | 57 ++ .../forms/the-input-element/selection.html | 140 +++++ .../show-picker-cross-origin-iframe.html | 79 +++ .../show-picker-disabled-readonly.html | 43 ++ .../show-picker-user-gesture.html | 31 + .../forms/the-input-element/telephone.html | 84 +++ .../semantics/forms/the-input-element/text.html | 104 ++++ .../semantics/forms/the-input-element/time-2.html | 42 ++ .../the-input-element/time-datalist-crash.html | 15 + .../time-focus-dynamic-value-change.html | 31 + .../semantics/forms/the-input-element/time.html | 357 ++++++++++++ .../type-change-file-to-text-crash.html | 11 + .../type-change-state-weekmonth.html | 169 ++++++ .../forms/the-input-element/type-change-state.html | 166 ++++++ .../semantics/forms/the-input-element/url.html | 59 ++ .../the-input-element/valueMode-weekmonth.html | 37 ++ .../forms/the-input-element/valueMode.html | 304 ++++++++++ .../semantics/forms/the-input-element/week.html | 41 ++ .../clicking-interactive-content.html | 111 ++++ .../clicking-noninteractive-labelable-content.html | 112 ++++ ...licking-noninteractive-unlabelable-content.html | 130 +++++ .../forward-focus-to-associated-element.html | 99 ++++ .../the-label-element/iframe-label-attributes.html | 8 + .../the-label-element/label-attributes.sub.html | 339 +++++++++++ .../the-label-element/label-inside-anchor.html | 28 + .../the-label-element/labelable-elements.html | 174 ++++++ .../proxy-click-to-associated-element.html | 58 ++ ...fier-click-to-associated-element.tentative.html | 67 +++ .../the-legend-element/HTMLLegendElement.html | 37 ++ .../forms/the-legend-element/legend-form.html | 33 ++ .../the-meter-element/meter-min-rendering-ref.html | 3 + .../the-meter-element/meter-min-rendering.html | 9 + .../semantics/forms/the-meter-element/meter.html | 250 ++++++++ .../optgroup-disabled-manual.html | 35 ++ .../optgroup-removal.window.js | 7 + .../dynamic-content-change-rendering-ref.html | 14 + .../dynamic-content-change-rendering.html | 34 ++ .../the-option-element/option-disabled-manual.html | 28 + .../option-element-constructor.html | 135 +++++ .../forms/the-option-element/option-form.html | 32 ++ .../forms/the-option-element/option-index.html | 54 ++ .../forms/the-option-element/option-label-value.js | 82 +++ .../forms/the-option-element/option-label.html | 12 + .../forms/the-option-element/option-selected.html | 61 ++ .../the-option-element/option-text-backslash.html | 15 + .../the-option-element/option-text-label.html | 23 + .../the-option-element/option-text-recurse.html | 92 +++ .../the-option-element/option-text-setter.html | 24 + .../the-option-element/option-text-spaces.html | 75 +++ .../forms/the-option-element/option-value.html | 12 + .../forms/the-output-element/mutations.window.js | 36 ++ .../output-setcustomvalidity.html | 17 + .../forms/the-output-element/output-validity.html | 23 + .../semantics/forms/the-output-element/output.html | 46 ++ .../forms/the-progress-element/progress-2.html | 34 ++ .../forms/the-progress-element/progress.html | 74 +++ .../forms/the-progress-element/progress.window.js | 18 + .../common-HTMLOptionsCollection-add.html | 89 +++ .../common-HTMLOptionsCollection-namedItem.html | 54 ++ .../common-HTMLOptionsCollection.html | 117 ++++ .../the-select-element/inserted-or-removed.html | 103 ++++ .../reset-algorithm-rendering-ref.html | 21 + .../reset-algorithm-rendering.html | 39 ++ .../resources/show-picker-child-iframe.html | 20 + .../resources/stylable-select-styles.css | 18 + .../the-select-element/select-add-optgroup.html | 29 + .../select-add-option-crash.html | 13 + .../forms/the-select-element/select-add.html | 36 ++ .../the-select-element/select-ask-for-reset.html | 97 ++++ .../select-child-button-and-datalist-ref.html | 12 + ...select-child-button-and-datalist.tentative.html | 18 + .../the-select-element/select-in-table-crash.html | 4 + .../forms/the-select-element/select-multiple.html | 48 ++ .../the-select-element/select-named-getter.html | 46 ++ .../select-parsing.tentative.html | 112 ++++ .../forms/the-select-element/select-remove.html | 64 +++ .../the-select-element/select-selectedOptions.html | 143 +++++ .../select-setcustomvalidity.html | 17 + .../forms/the-select-element/select-validity.html | 124 ++++ .../forms/the-select-element/select-value.html | 56 ++ .../select-willvalidate-readonly-attribute.html | 24 + .../forms/the-select-element/selected-index.html | 143 +++++ .../show-picker-being-cv-hidden.html | 23 + .../show-picker-being-rendered.html | 21 + .../show-picker-cross-origin-iframe.tentative.html | 79 +++ .../show-picker-disabled.tentative.html | 14 + .../show-picker-multiple.tentative.html | 17 + .../show-picker-size.tentative.html | 17 + .../show-picker-user-gesture.tentative.html | 24 + .../button-type-selectlist-appearance-ref.html | 2 + ...utton-type-selectlist-appearance.tentative.html | 6 + .../selectlist-ask-for-reset.html | 119 ++++ ...selectlist-button-closes-listbox.tentative.html | 51 ++ .../selectlist-button-type-appearance-ref.html | 2 + ...electlist-button-type-appearance.tentative.html | 8 + .../selectlist-button-type-behavior.tentative.html | 45 ++ .../selectlist-default-button-slot-ref.html | 12 + .../selectlist-default-button-slot.tentative.html | 10 + .../selectlist-disabled.tentative.html | 28 + .../selectlist-events.tentative.html | 244 ++++++++ .../selectlist-explicit-size-ref.tentative.html | 10 + .../selectlist-explicit-size.tentative.html | 14 + .../selectlist-font-size-ref.tentative.html | 8 + .../selectlist-font-size.tentative.html | 13 + .../selectlist-form-attribute.tentative.html | 231 ++++++++ .../selectlist-form-elements.tentative.html | 25 + .../selectlist-form-state-restore.tentative.html | 39 ++ .../selectlist-form-submission.tentative.html | 57 ++ .../selectlist-keyboard-behavior.tentative.html | 182 ++++++ .../selectlist-keyboard.tentative.html | 142 +++++ .../selectlist-labels.tentative.html | 29 + .../selectlist-listbox-element-ref.html | 17 + .../selectlist-listbox-element.tentative.html | 16 + ...st-listbox-fallback-change-crash.tentative.html | 35 ++ .../selectlist-many-options.tentative.html | 140 +++++ ...electlist-marker-end-aligned-ref.tentative.html | 19 + .../selectlist-marker-end-aligned.tentative.html | 23 + .../selectlist-marker-part-ref.html | 9 + .../selectlist-marker-part.tentative.html | 12 + .../selectlist-marker-slot-ref.html | 13 + .../selectlist-marker-slot.tentative.html | 8 + ...list-marker-visible-overflow-ref.tentative.html | 10 + ...lectlist-marker-visible-overflow.tentative.html | 14 + .../selectlist-nested.tentative.html | 94 +++ ...-arbitrary-content-displayed-ref.tentative.html | 44 ++ ...tion-arbitrary-content-displayed.tentative.html | 67 +++ ...itrary-content-not-displayed-ref.tentative.html | 14 + ...-arbitrary-content-not-displayed.tentative.html | 25 + .../selectlist-option-focusable.tentative.html | 49 ++ .../selectlist-option-label-rendering-ref.html | 4 + ...electlist-option-label-rendering.tentative.html | 8 + .../selectlist-overflow-x-ref.tentative.html | 13 + .../selectlist-overflow-x.tentative.html | 16 + .../selectlist-parts-structure.tentative.html | 495 ++++++++++++++++ ...tlist-popover-position-with-zoom.tentative.html | 135 +++++ .../selectlist-popover-position.tentative.html | 115 ++++ .../selectlist-popover.tentative.html | 102 ++++ ...seudo-light-dismiss-invalidation.tentative.html | 47 ++ .../selectlist-pseudo-open-closed.tentative.html | 61 ++ .../selectlist-required-attribute.tentative.html | 61 ++ .../selectlist-rtl-ref.tentative.html | 10 + .../selectlist-rtl.tentative.html | 14 + .../selectlist-selected-value-behavior-ref.html | 9 + ...lectlist-selected-value-behavior.tentative.html | 8 + .../selectlist-selected-value-part-ref.html | 9 + .../selectlist-selected-value-part.tentative.html | 12 + .../selectlist-selected-value-slot-ref.html | 13 + .../selectlist-selected-value-slot.tentative.html | 8 + ...ectlist-selectedoption-element-cloning-ref.html | 4 + ...t-selectedoption-element-cloning.tentative.html | 11 + ...electlist-selectedoption-element.tentative.html | 28 + .../selectlist-tab-navigation.tentative.html | 33 ++ .../selectlist-tabindex-order.tentative.html | 33 ++ .../selectlist-text-only-ref.html | 9 + .../selectlist-text-only.tentative.html | 9 + .../selectlist-user-select.tentative.html | 63 +++ .../selectlist-validity.tentative.html | 88 +++ .../selectlist-value-option.tentative.html | 20 + .../selectlist-value-selectedOption.tentative.html | 224 ++++++++ .../selectlist-writingmode-lr.tentative.html | 8 + .../selectlist-writingmode-rl.tentative.html | 8 + .../selectlist-writingmode-tb-ref.html | 4 + .../forms/the-selectlist-element/support/back.html | 2 + .../support/fake-selectlist.js | 112 ++++ .../support/selectlist_button_icon.svg | 3 + .../tab-closes-listbox.tentative.html | 43 ++ .../change-to-empty-value.html | 32 ++ .../forms/the-textarea-element/cloning-steps.html | 34 ++ .../multiline-placeholder-cr.html | 1 + .../multiline-placeholder-crlf.html | 21 + .../multiline-placeholder-ref.html | 15 + .../multiline-placeholder.html | 22 + .../placeholder-white-space-notref.html | 8 + .../placeholder-white-space.tentative.html | 15 + .../the-textarea-element/support/placeholder.css | 6 + .../the-textarea-element/textarea-maxlength.html | 51 ++ .../the-textarea-element/textarea-minlength.html | 51 ++ .../textarea-newline-bidi-ref.html | 19 + .../textarea-newline-bidi.html | 23 + .../textarea-placeholder-lineheight.html | 37 ++ .../textarea-placeholder-manual.html | 14 + .../textarea-select-event-manual.html | 31 + .../textarea-select-manual.html | 13 + .../textarea-setcustomvalidity.html | 17 + .../textarea-splittext-with-range-crash.html | 24 + ...textarea-splittext-with-range-simple-crash.html | 14 + .../the-textarea-element/textarea-textLength.html | 19 + .../forms/the-textarea-element/textarea-type.html | 16 + .../textarea-validity-clone.html | 27 + ...area-validity-valueMissing-inside-datalist.html | 19 + .../value-defaultValue-textContent-xhtml.xhtml | 26 + .../value-defaultValue-textContent.html | 181 ++++++ ...ap-enumerated-ascii-case-insensitive-child.html | 5 + .../wrap-enumerated-ascii-case-insensitive.html | 47 ++ .../the-textarea-element/wrap-reflect-1-ref.html | 5 + .../the-textarea-element/wrap-reflect-1a.html | 9 + .../the-textarea-element/wrap-reflect-1b.html | 9 + .../wrapping-transformation.window.js | 58 ++ .../tests/html/semantics/grouping-content/META.yml | 2 + .../the-dd-element/grouping-dd.html | 27 + .../the-div-element/grouping-div.html | 28 + .../the-dl-element/grouping-dl.html | 30 + .../the-dt-element/grouping-dt.html | 28 + .../grouping-figcaption.html | 28 + .../the-figure-element/grouping-figure.html | 29 + .../the-hr-element/grouping-hr.html | 30 + .../the-li-element/grouping-li-novalue-manual.html | 148 +++++ .../grouping-li-reftest-001-ref.html | 46 ++ .../the-li-element/grouping-li-reftest-001.html | 47 ++ .../grouping-li-reftest-002-ref.html | 32 ++ .../the-li-element/grouping-li-reftest-002.html | 34 ++ .../grouping-li-reftest-003-ref.html | 14 + .../the-li-element/grouping-li-reftest-003.html | 18 + .../grouping-li-reftest-004-ref.html | 23 + .../the-li-element/grouping-li-reftest-004.html | 26 + .../grouping-li-reftest-005-ref.html | 22 + .../the-li-element/grouping-li-reftest-005.html | 25 + .../the-li-element/grouping-li-reftest-006.html | 29 + .../the-li-element/grouping-li-reftest-007.html | 31 + .../grouping-li-reftest-display-list-item-ref.html | 40 ++ .../grouping-li-reftest-display-list-item.html | 44 ++ .../grouping-li-reftest-list-owner-menu-ref.html | 46 ++ .../grouping-li-reftest-list-owner-menu.html | 58 ++ .../grouping-li-reftest-list-owner-mixed-ref.html | 52 ++ .../grouping-li-reftest-list-owner-mixed.html | 64 +++ ...grouping-li-reftest-list-owner-not-dir-ref.html | 52 ++ .../grouping-li-reftest-list-owner-not-dir.html | 58 ++ .../grouping-li-reftest-list-owner-ol-ref.html | 46 ++ .../grouping-li-reftest-list-owner-ol.html | 52 ++ .../grouping-li-reftest-list-owner-parent-ref.html | 40 ++ .../grouping-li-reftest-list-owner-parent.html | 45 ++ ...ng-li-reftest-list-owner-skip-no-boxes-ref.html | 42 ++ ...ouping-li-reftest-list-owner-skip-no-boxes.html | 52 ++ .../grouping-li-reftest-list-owner-ul-ref.html | 46 ++ .../grouping-li-reftest-list-owner-ul.html | 58 ++ ...grouping-li-reftest-not-being-rendered-ref.html | 24 + .../grouping-li-reftest-not-being-rendered.html | 30 + .../the-li-element/grouping-li.html | 193 +++++++ .../grouping-ol-rev-reftest-001-ref.html | 50 ++ .../grouping-ol-rev-reftest-001.html | 56 ++ .../grouping-ol-start-reftest-001-ref.html | 53 ++ .../grouping-ol-start-reftest-001.html | 60 ++ .../grouping-ol-start-reftest-002-ref.html | 53 ++ .../grouping-ol-start-reftest-002.html | 57 ++ .../grouping-ol-type-reftest-001-ref.html | 52 ++ .../grouping-ol-type-reftest-001.html | 55 ++ .../grouping-ol-type-reftest-002-ref.html | 59 ++ .../grouping-ol-type-reftest-002.html | 62 ++ .../grouping-ol-type-reftest-003-ref.html | 76 +++ .../grouping-ol-type-reftest-003.html | 79 +++ .../the-ol-element/grouping-ol.html | 299 ++++++++++ .../the-ol-element/ol.start-reflection-1.html | 25 + .../the-ol-element/ol.start-reflection-2.html | 25 + .../the-ol-element/reversed-1-ref.html | 6 + .../the-ol-element/reversed-1a.html | 10 + .../the-ol-element/reversed-1b.html | 15 + .../the-ol-element/reversed-1c.html | 16 + .../the-ol-element/reversed-1d.html | 12 + .../the-ol-element/reversed-1e.html | 11 + .../the-ol-element/reversed-2-ref.html | 6 + .../the-ol-element/reversed-2.html | 7 + .../grouping-content/the-p-element/grouping-p.html | 28 + .../grouping-pre-reftest-001-ref.html | 22 + .../the-pre-element/grouping-pre-reftest-001.html | 23 + .../the-pre-element/grouping-pre.html | 28 + .../the-pre-element/pre-newline-bidi-ref.html | 19 + .../the-pre-element/pre-newline-bidi.html | 23 + .../the-ul-element/grouping-ul.html | 28 + .../html/semantics/interactive-elements/META.yml | 2 + .../commands/common/accesskey.js | 36 ++ .../legend/first-input-after-legend-manual.html | 10 + .../legend/first-input-before-legend-manual.html | 13 + .../legend/first-input-inside-legend-manual.html | 12 + .../commands/legend/focusable-legend-manual.html | 14 + .../legend/focusable-legend-sibling-manual.html | 17 + .../legend/input-outside-fieldset-manual.html | 17 + .../commands/legend/label-sibling-manual.html | 18 + .../commands/legend/no-fieldset-parent-manual.html | 18 + .../contextmenu-historical.html | 99 ++++ .../auto-expand-ax-slot-recalc-crash.html | 28 + .../auto-expand-details-element-fragment.html | 29 + .../auto-expand-window-find-crash.html | 18 + .../closed-details-layout-apis.tentative.html | 28 + .../details-add-summary-ref.html | 5 + .../the-details-element/details-add-summary.html | 25 + .../the-details-element/details-cq-crash.html | 16 + .../details-findstring-crash.html | 15 + .../details-keyboard-activation.html | 52 ++ .../the-details-element/details.html | 47 ++ .../display-table-with-rt-crash.html | 9 + .../modified-details-crash.html | 31 + .../the-details-element/name-attribute.html | 469 +++++++++++++++ .../the-details-element/nested-details-crash.html | 26 + ...nested-top-layer-elements-in-details-crash.html | 17 + .../support/empty-html-document.html | 2 + .../the-details-element/toggleEvent.html | 183 ++++++ .../the-dialog-element/WEB_FEATURES.yml | 3 + .../the-dialog-element/abspos-dialog-layout.html | 175 ++++++ .../backdrop-descendant-selector-ref.html | 18 + .../backdrop-descendant-selector.html | 55 ++ .../backdrop-dynamic-display-none-ref.html | 7 + .../backdrop-dynamic-display-none.html | 24 + .../backdrop-dynamic-style-change-ref.html | 19 + .../backdrop-dynamic-style-change.html | 35 ++ .../the-dialog-element/backdrop-in-flow-ref.html | 16 + .../the-dialog-element/backdrop-in-flow.html | 39 ++ .../the-dialog-element/backdrop-inherits-ref.html | 16 + .../the-dialog-element/backdrop-inherits.html | 25 + .../backdrop-receives-element-events.html | 50 ++ .../backdrop-stacking-order-ref.html | 65 +++ .../backdrop-stacking-order.html | 81 +++ .../the-dialog-element/centering-iframe.sub.html | 31 + .../the-dialog-element/centering.html | 69 +++ .../the-dialog-element/child-sequential-focus.html | 60 ++ .../closed-dialog-does-not-block-mouse-events.html | 51 ++ .../the-dialog-element/default-color.html | 35 ++ .../dialog-audio-video-crash.html | 10 + .../dialog-autofocus-just-once.html | 24 + .../dialog-autofocus-multiple-times.html | 42 ++ .../the-dialog-element/dialog-autofocus.html | 65 +++ .../the-dialog-element/dialog-cancel-events.html | 53 ++ .../dialog-cancel-preventDefault.html | 49 ++ .../dialog-cancel-with-input.html | 58 ++ .../dialog-cancel-with-select.html | 37 ++ .../the-dialog-element/dialog-canceling.html | 107 ++++ .../dialog-close-event-async.html | 33 ++ .../the-dialog-element/dialog-close-event.html | 47 ++ .../dialog-close-via-attribute.html | 59 ++ .../the-dialog-element/dialog-close.html | 77 +++ .../the-dialog-element/dialog-enabled.html | 16 + .../dialog-focus-previous-outside.html | 82 +++ .../dialog-focus-shadow-double-nested.html | 53 ++ .../the-dialog-element/dialog-focus-shadow.html | 274 +++++++++ .../the-dialog-element/dialog-focusability.html | 58 ++ .../dialog-focusing-steps-disconnected.html | 40 ++ .../dialog-focusing-steps-inert.html | 48 ++ .../dialog-focusing-steps-prevent-autofocus.html | 21 + .../dialog-form-submission-unusual.html | 34 ++ .../the-dialog-element/dialog-form-submission.html | 131 +++++ .../the-dialog-element/dialog-inert.html | 45 ++ .../dialog-keydown-preventDefault.html | 45 ++ .../dialog-no-throw-requested-state.html | 29 + .../dialog-not-in-tree-crash.html | 5 + .../the-dialog-element/dialog-open-2.html | 27 + .../the-dialog-element/dialog-open.html | 43 ++ .../dialog-overlay-re-add-during-transition.html | 32 ++ .../the-dialog-element/dialog-overlay.html | 36 ++ .../the-dialog-element/dialog-return-value.html | 54 ++ .../dialog-showModal-inert-crash.html | 17 + .../dialog-showModal-remove.html | 24 + .../the-dialog-element/dialog-showModal.html | 188 ++++++ .../dialogs-with-no-backdrop-ref.html | 5 + .../dialogs-with-no-backdrop.html | 41 ++ .../dont-share-style-to-top-layer-ref.html | 16 + .../dont-share-style-to-top-layer.html | 18 + ...d-from-top-layer-has-original-position-ref.html | 18 + ...moved-from-top-layer-has-original-position.html | 35 ++ ...fixed-position-child-with-contain-ancestor.html | 27 + ...-position-child-with-fixed-position-cb-ref.html | 16 + .../fixed-position-child-with-fo-ancestor.html | 29 + ...-child-with-transformed-ancestor.tentative.html | 27 + ...-child-with-will-change-ancestor.tentative.html | 27 + .../the-dialog-element/focus-after-close.html | 229 ++++++++ .../focus-previous-iframe.tentative.html | 52 ++ .../green-dialog-and-backdrop.html | 26 + .../inert-does-not-match-disabled-selector.html | 35 ++ .../the-dialog-element/inert-focus-in-frames.html | 73 +++ .../the-dialog-element/inert-inlines.html | 85 +++ .../the-dialog-element/inert-label-focus.html | 53 ++ .../inert-node-is-not-highlighted-ref.html | 36 ++ .../inert-node-is-not-highlighted.html | 33 ++ .../inert-node-is-uneditable.html | 55 ++ .../inert-node-is-unfocusable.html | 75 +++ .../inert-node-is-unselectable.html | 19 + .../the-dialog-element/inert-svg-hittest.html | 68 +++ .../inertness-with-modal-dialogs-and-iframes.html | 131 +++++ .../modal-dialog-ancestor-is-inert.html | 101 ++++ .../modal-dialog-backdrop-opacity-ref.html | 22 + .../modal-dialog-backdrop-opacity.html | 19 + .../modal-dialog-backdrop-ref.html | 42 ++ .../the-dialog-element/modal-dialog-backdrop.html | 21 + .../modal-dialog-blocks-mouse-events.html | 101 ++++ .../modal-dialog-display-contents-ref.html | 18 + .../modal-dialog-display-contents.html | 28 + .../modal-dialog-generated-content-ref.html | 42 ++ .../modal-dialog-generated-content.html | 59 ++ .../modal-dialog-in-iframe-ref.html | 2 + .../the-dialog-element/modal-dialog-in-iframe.html | 18 + .../modal-dialog-in-object-ref.html | 2 + .../the-dialog-element/modal-dialog-in-object.html | 17 + .../modal-dialog-in-replaced-renderer-ref.html | 18 + .../modal-dialog-in-replaced-renderer.html | 26 + .../modal-dialog-in-table-column-ref.html | 14 + .../modal-dialog-in-table-column.html | 26 + .../modal-dialog-in-visibility-hidden.html | 39 ++ .../modal-dialog-scroll-height.html | 32 ++ .../the-dialog-element/modal-dialog-selection.html | 68 +++ .../modal-dialog-sibling-ref.html | 20 + .../the-dialog-element/modal-dialog-sibling.html | 25 + .../multiple-centered-dialogs.html | 68 +++ ...n-modal-dialog-does-not-block-mouse-events.html | 52 ++ .../non-modal-dialog-layout.html | 102 ++++ .../the-dialog-element/pass-dialog-ref.html | 9 + .../remove-dialog-should-unblock-document.html | 34 ++ ...oved-element-is-removed-from-top-layer-ref.html | 30 + .../removed-element-is-removed-from-top-layer.html | 44 ++ .../the-dialog-element/resources/common.js | 18 + .../the-dialog-element/resources/dialog.css | 14 + .../resources/inert-focus-in-frames-frame1.html | 24 + .../resources/inert-focus-in-frames-frame2.html | 1 + .../the-dialog-element/resources/submit.jpg | Bin 0 -> 7782 bytes .../show-modal-focusing-steps.html | 63 +++ .../showmodal-in-shadow-crash.html | 16 + .../showmodal-shadow-sibling-frame-crash.html | 32 ++ .../the-dialog-element/simulated-click-inert.html | 33 ++ .../submit-dialog-close-event.html | 34 ++ .../the-dialog-element/synthetic-click-inert.html | 40 ++ .../top-layer-containing-block-ref.html | 22 + .../top-layer-containing-block.html | 39 ++ .../top-layer-display-none-ref.html | 19 + .../the-dialog-element/top-layer-display-none.html | 60 ++ .../the-dialog-element/top-layer-nesting-ref.html | 26 + .../the-dialog-element/top-layer-nesting.html | 66 +++ .../the-dialog-element/top-layer-parent-clip.html | 29 + .../top-layer-parent-filter.html | 30 + .../the-dialog-element/top-layer-parent-mask.html | 30 + .../top-layer-parent-opacity.html | 30 + .../top-layer-parent-overflow-clip.html | 35 ++ .../top-layer-parent-overflow-hidden.html | 34 ++ .../top-layer-parent-overflow-scroll.html | 35 ++ .../top-layer-parent-transform.html | 29 + .../the-dialog-element/top-layer-position-ref.html | 22 + .../top-layer-position-relative.html | 28 + .../top-layer-position-static.html | 28 + .../the-dialog-element/top-layer-position.html | 31 + .../top-layer-remove-popover-attribute-ref.html | 15 + .../top-layer-remove-popover-attribute.html | 18 + ...er-stacking-correct-order-remove-readd-ref.html | 19 + ...-layer-stacking-correct-order-remove-readd.html | 46 ++ .../top-layer-stacking-dynamic-ref.html | 19 + .../top-layer-stacking-dynamic.html | 55 ++ .../the-dialog-element/top-layer-stacking-ref.html | 40 ++ .../top-layer-stacking.tentative.html | 56 ++ .../the-summary-element/activation-behavior.html | 134 +++++ .../anchor-with-inline-element.html | 77 +++ .../the-summary-element/anchor-without-link.html | 40 ++ .../click-behavior-optional.tentative.html | 39 ++ .../display-table-with-rt-crash.html | 9 + .../summary-untrusted-key-event.html | 104 ++++ .../tests/html/semantics/interfaces.html | 74 +++ .../tests/html/semantics/interfaces.js | 150 +++++ .../semantics/invokers/idlharness.tentative.html | 16 + .../invokeelement-interface.tentative.html | 93 +++ .../invokeevent-dispatch-shadow.tentative.html | 104 ++++ .../invokers/invokeevent-interface.tentative.html | 166 ++++++ ...voketarget-button-event-dispatch.tentative.html | 119 ++++ ...invoketarget-fullscreen-behavior.tentative.html | 175 ++++++ ...target-generic-eventtarget-crash.tentative.html | 18 + .../invoketarget-on-audio-behavior.tentative.html | 285 ++++++++++ ...invoketarget-on-details-behavior.tentative.html | 218 +++++++ ...invoketarget-on-popover-behavior.tentative.html | 209 +++++++ .../invoketarget-on-video-behavior.tentative.html | 253 +++++++++ .../semantics/invokers/resources/invoker-utils.js | 12 + .../tests/html/semantics/links/META.yml | 2 + .../header-origin-no-referrer-when-downgrade.html | 20 + .../header-origin-no-referrer.html | 20 + .../header-origin-origin-when-cross-origin.html | 20 + .../header-origin-origin.html | 20 + .../header-origin-same-origin.html | 20 + ...der-origin-strict-origin-when-cross-origin.html | 20 + .../header-origin-strict-origin.html | 20 + .../header-origin-unsafe-url.html | 20 + .../links/downloading-resources/header-origin.html | 19 + .../links/downloading-resources/header-origin.js | 40 ++ ...header-referrer-no-referrer-when-downgrade.html | 20 + .../header-referrer-no-referrer.html | 20 + .../header-referrer-origin-when-cross-origin.html | 20 + .../header-referrer-origin.html | 20 + .../header-referrer-same-origin.html | 20 + ...r-referrer-strict-origin-when-cross-origin.html | 20 + .../header-referrer-strict-origin.html | 20 + .../header-referrer-unsafe-url.html | 20 + .../downloading-resources/header-referrer.html | 19 + .../links/downloading-resources/header-referrer.js | 40 ++ .../resources/inspect-header.py | 18 + .../activation-behavior.window.js | 50 ++ .../following-hyperlinks/active-document.window.js | 23 + .../links/hyperlink-auditing/headers.optional.html | 55 ++ .../hyperlink-auditing/resources/stash-headers.py | 27 + .../htmlanchorelement_attribute-getter-setter.html | 65 +++ .../htmlanchorelement_getter.html | 48 ++ .../htmlanchorelement_noopener.html | 78 +++ .../non-parsable-url-getter-setter.window.js | 54 ++ ...special-opaque-path-url-getter-setter.window.js | 59 ++ .../non-special-url-getter-setter.window.js | 63 +++ .../support/noopener-popup.html | 19 + .../support/noopener-target-1.html | 4 + .../support/noopener-target-2.html | 8 + .../support/target_blank_implicit_noopener.html | 6 + .../target_blank_implicit_noopener.html | 58 ++ .../target_blank_implicit_noopener_base.html | 59 ++ .../links/linktypes/alternate-css-ref.html | 5 + .../semantics/links/linktypes/alternate-css.html | 7 + .../semantics/links/linktypes/alternate-import.css | 3 + .../html/semantics/links/linktypes/alternate.css | 5 + ...inked-resource-ascii-case-insensitive-lower.css | 1 + ...inked-resource-ascii-case-insensitive-mixed.css | 1 + ...inked-resource-ascii-case-insensitive-other.css | 1 + ...linked-resource-ascii-case-insensitive-ref.html | 9 + ...heet-linked-resource-ascii-case-insensitive.css | 3 + ...eet-linked-resource-ascii-case-insensitive.html | 14 + .../semantics/links/linktypes/original-id.json | 1 + .../html/semantics/links/linktypes/preferred.css | 3 + .../permission-element/no-end-tag-no-contents.html | 27 + .../tests/html/semantics/popovers/WEB_FEATURES.yml | 3 + .../popovers/hide-other-popover-side-effects.html | 21 + .../semantics/popovers/invoker-show-crash.html | 12 + .../html/semantics/popovers/label-in-invoker.html | 23 + .../popovers/light-dismiss-event-ordering.html | 82 +++ .../popover-anchor-change-display-ref.html | 24 + .../popover-anchor-change-display.tentative.html | 51 ++ .../popover-anchor-display-none.tentative.html | 34 ++ .../popovers/popover-anchor-display-ref.html | 29 + .../popovers/popover-anchor-display.tentative.html | 109 ++++ .../popover-anchor-idl-property.tentative.html | 52 ++ .../popover-anchor-multicol-display.tentative.html | 62 ++ .../popover-anchor-nested-display-ref.html | 57 ++ .../popover-anchor-nested-display.tentative.html | 56 ++ .../popovers/popover-anchor-nesting.tentative.html | 56 ++ .../popover-anchor-scroll-display-ref.html | 32 ++ .../popover-anchor-scroll-display.tentative.html | 86 +++ ...over-anchor-transition.tentative.tentative.html | 34 ++ .../semantics/popovers/popover-and-svg-ref.html | 11 + .../html/semantics/popovers/popover-and-svg.html | 18 + .../semantics/popovers/popover-appearance-ref.html | 18 + .../semantics/popovers/popover-appearance.html | 26 + .../popovers/popover-attribute-all-elements.html | 47 ++ .../popovers/popover-attribute-basic.html | 359 ++++++++++++ .../popovers/popover-backdrop-appearance-ref.html | 45 ++ .../popovers/popover-backdrop-appearance.html | 47 ++ .../popover-beforetoggle-opening-event.html | 33 ++ .../semantics/popovers/popover-change-type.html | 42 ++ .../semantics/popovers/popover-close-request.html | 40 ++ .../popovers/popover-css-properties.tentative.html | 54 ++ .../popovers/popover-dialog-appearance-ref.html | 33 ++ .../popovers/popover-dialog-appearance.html | 27 + .../semantics/popovers/popover-dialog-crash.html | 26 + .../semantics/popovers/popover-document-open.html | 30 + .../html/semantics/popovers/popover-events.html | 216 +++++++ .../html/semantics/popovers/popover-focus-2.html | 174 ++++++ .../semantics/popovers/popover-focus-harness.html | 25 + .../html/semantics/popovers/popover-focus.html | 292 ++++++++++ .../popovers/popover-hidden-display-ref.html | 19 + .../semantics/popovers/popover-hidden-display.html | 39 ++ .../popovers/popover-hint-crash.tentative.html | 29 + .../popover-hover-hide-hide.tentative.html | 21 + .../popover-hover-hide-hover.tentative.html | 21 + .../popover-hover-hide-show.tentative.html | 21 + .../popover-hover-hide-toggle.tentative.html | 21 + .../popovers/popover-inside-display-none-ref.html | 5 + .../popovers/popover-inside-display-none.html | 19 + .../semantics/popovers/popover-invoker-reset.html | 34 ++ .../popover-invoking-attribute-hint.tentative.html | 19 + .../popovers/popover-invoking-attribute.html | 74 +++ .../popover-light-dismiss-flat-tree-nested.html | 55 ++ .../popovers/popover-light-dismiss-flat-tree.html | 46 ++ .../popover-light-dismiss-hint.tentative.html | 107 ++++ .../popovers/popover-light-dismiss-on-scroll.html | 66 +++ ...ht-dismiss-with-anchor.tentative.tentative.html | 90 +++ .../semantics/popovers/popover-light-dismiss.html | 607 ++++++++++++++++++++ .../semantics/popovers/popover-manual-crash.html | 32 ++ .../semantics/popovers/popover-move-documents.html | 89 +++ .../popovers/popover-not-keyboard-focusable.html | 49 ++ .../popovers/popover-open-display-ref.html | 20 + .../semantics/popovers/popover-open-display.html | 27 + .../popovers/popover-open-in-beforetoggle.html | 66 +++ .../popovers/popover-open-overflow-display-2.html | 69 +++ .../popover-open-overflow-display-ref.html | 22 + .../popover-open-overflow-display.tentative.html | 37 ++ .../html/semantics/popovers/popover-overlay.html | 51 ++ .../html/semantics/popovers/popover-removal-2.html | 29 + .../html/semantics/popovers/popover-removal.html | 28 + .../semantics/popovers/popover-shadow-dom.html | 202 +++++++ .../popovers/popover-shadowhost-focus.html | 56 ++ ...opover-stacking-anchor-attribute.tentative.html | 104 ++++ .../popovers/popover-stacking-context-ref.html | 29 + .../popovers/popover-stacking-context.html | 35 ++ .../html/semantics/popovers/popover-stacking.html | 131 +++++ .../popover-target-action-hover.tentative.html | 180 ++++++ .../popovers/popover-target-element-disabled.html | 159 ++++++ .../popovers/popover-top-layer-combinations.html | 155 +++++ .../popovers/popover-top-layer-interactions.html | 89 +++ ...popover-top-layer-nesting-anchor.tentative.html | 45 ++ .../popover-top-layer-nesting-hints.tentative.html | 46 ++ .../popover-top-layer-nesting.tentative.html | 45 ++ .../popover-types-with-hints.tentative.html | 179 ++++++ .../html/semantics/popovers/popover-types.html | 37 ++ .../popovers/popover-undefined-remove-crash.html | 12 + .../popovers/popovertarget-reflection.html | 53 ++ .../resources/popover-hover-hide-common.js | 139 +++++ .../resources/popover-invoking-attribute.js | 122 ++++ .../popovers/resources/popover-styles.css | 17 + .../resources/popover-top-layer-nesting.js | 108 ++++ .../semantics/popovers/resources/popover-utils.js | 176 ++++++ .../html/semantics/popovers/togglePopover.html | 79 +++ .../semantics/popovers/toggleevent-interface.html | 208 +++++++ .../html/semantics/rellist-feature-detection.html | 84 +++ .../tests/html/semantics/scripting-1/META.yml | 2 + .../the-noscript-element/non-html-noscript.html | 16 + .../scripting-1/the-script-element/README.md | 16 + .../scripting-1/the-script-element/async_001.htm | 18 + .../scripting-1/the-script-element/async_002.htm | 31 + .../scripting-1/the-script-element/async_003.htm | 40 ++ .../scripting-1/the-script-element/async_004.htm | 38 ++ .../scripting-1/the-script-element/async_005.htm | 43 ++ .../scripting-1/the-script-element/async_006.htm | 46 ++ .../scripting-1/the-script-element/async_007.htm | 49 ++ .../scripting-1/the-script-element/async_008.htm | 47 ++ .../scripting-1/the-script-element/async_009.htm | 25 + .../scripting-1/the-script-element/async_010.htm | 55 ++ .../scripting-1/the-script-element/async_011.htm | 19 + .../the-script-element/cacheable-script-throw.py | 4 + .../css-module-assertions/charset-2.html | 19 + .../css-module-assertions/charset-bom.html | 20 + .../css-module-assertions/charset.html | 37 ++ .../content-type-checking.html | 39 ++ .../cors-crossorigin-requests.html | 33 ++ .../css-module-assertions/credentials.sub.html | 55 ++ .../css-module-worker-test.html | 54 ++ .../import-css-module-basic.html | 83 +++ .../import-css-module-dynamic.html | 23 + .../css-module-assertions/integrity.html | 28 + .../css-module-assertions/load-error-events.html | 67 +++ .../referrer-policies.sub.html | 84 +++ .../css-module-assertions/relative-urls.html | 18 + .../css-module-assertions/resources/atImported.css | 3 + .../css-module-assertions/resources/bad-import.css | 4 + .../resources/basic-large.css | 7 + .../css-module-assertions/resources/basic.css | 3 + .../resources/bom-utf-16be.css | Bin 0 -> 64 bytes .../resources/bom-utf-16le.css | Bin 0 -> 64 bytes .../css-module-assertions/resources/bom-utf-8.css | 1 + .../resources/credentials-iframe.sub.html | 33 ++ .../resources/cross-origin.py | 17 + ...ossorigin-import-parse-error-with-cors.sub.html | 15 + .../crossorigin-import-with-cors.sub.html | 15 + .../crossorigin-import-without-cors.sub.html | 15 + .../css-module-without-assertion-iframe.html | 22 + .../resources/integrity-matches.js | 2 + .../resources/integrity-mismatches.js | 2 + .../resources/load-error-events.py | 14 + .../resources/load-relative-url.css | 5 + .../css-module-assertions/resources/malformed.css | 7 + .../resources/parse-error.css | 2 + .../resources/record-fetch.py | 20 + .../resources/referrer-checker.py | 7 + .../css-module-assertions/resources/utf-8.css | 3 + .../resources/windows-1250.css | 3 + .../resources/worker-dynamic-import.sub.js | 3 + .../css-module-assertions/resources/worker.sub.js | 2 + .../script-element-css-src.html | 14 + .../the-script-element/css-module/charset-2.html | 19 + .../the-script-element/css-module/charset-bom.html | 20 + .../the-script-element/css-module/charset.html | 37 ++ .../css-module/content-type-checking.html | 39 ++ .../css-module/cors-crossorigin-requests.html | 33 ++ .../css-module/credentials.sub.html | 55 ++ .../css-module/css-module-worker-test.html | 54 ++ .../css-module/import-css-module-basic.html | 83 +++ .../css-module/import-css-module-dynamic.html | 23 + .../the-script-element/css-module/integrity.html | 28 + .../css-module/load-error-events.html | 67 +++ .../css-module/referrer-policies.sub.html | 84 +++ .../css-module/relative-urls.html | 18 + .../css-module/resources/atImported.css | 3 + .../css-module/resources/bad-import.css | 4 + .../css-module/resources/basic-large.css | 7 + .../css-module/resources/basic.css | 3 + .../css-module/resources/bom-utf-16be.css | Bin 0 -> 64 bytes .../css-module/resources/bom-utf-16le.css | Bin 0 -> 64 bytes .../css-module/resources/bom-utf-8.css | 1 + .../resources/credentials-iframe.sub.html | 33 ++ .../css-module/resources/cross-origin.py | 17 + ...ossorigin-import-parse-error-with-cors.sub.html | 15 + .../crossorigin-import-with-cors.sub.html | 15 + .../crossorigin-import-without-cors.sub.html | 15 + .../css-module-without-attribute-iframe.html | 22 + .../css-module/resources/integrity-matches.js | 2 + .../css-module/resources/integrity-mismatches.js | 2 + .../css-module/resources/load-error-events.py | 14 + .../css-module/resources/load-relative-url.css | 5 + .../css-module/resources/malformed.css | 7 + .../css-module/resources/parse-error.css | 2 + .../css-module/resources/record-fetch.py | 20 + .../css-module/resources/referrer-checker.py | 7 + .../css-module/resources/utf-8.css | 3 + .../css-module/resources/windows-1250.css | 3 + .../resources/worker-dynamic-import.sub.js | 3 + .../css-module/resources/worker.sub.js | 2 + .../css-module/script-element-css-src.html | 14 + .../scripting-1/the-script-element/data-url.html | 32 ++ .../the-script-element/defer-script/README.md | 7 + .../defer-script/async-script-2.html | 40 ++ .../defer-script/async-script.html | 22 + .../defer-script/defer-script-xml.xhtml | 40 ++ .../defer-script/defer-script.html | 37 ++ .../defer-script/document-write.html | 67 +++ .../defer-script/resources/async-script-1.js | 1 + .../defer-script/resources/defer-script-1.js | 1 + .../defer-script/resources/defer-script-2.js | 1 + .../resources/document-open-write-close.js | 3 + .../defer-script/resources/document-open-write.js | 2 + .../defer-script/resources/document-write-close.js | 2 + .../resources/document-write-iframe.sub.html | 14 + .../defer-script/resources/document-write.js | 1 + .../defer-script/resources/helper.js | 17 + .../defer-script/resources/sync-script-1.js | 1 + .../defer-script/resources/sync-script-2.js | 1 + .../defer-script/support/async-script.html | 44 ++ .../scripting-1/the-script-element/defer.js | 4 + .../emptyish-script-elements.html | 75 +++ .../the-script-element/execution-timing/001.html | 27 + .../the-script-element/execution-timing/002.html | 27 + .../the-script-element/execution-timing/003.html | 27 + .../the-script-element/execution-timing/004.html | 25 + .../the-script-element/execution-timing/005.html | 27 + .../the-script-element/execution-timing/006.html | 30 + .../the-script-element/execution-timing/007.html | 27 + .../the-script-element/execution-timing/008.html | 28 + .../the-script-element/execution-timing/009.html | 29 + .../the-script-element/execution-timing/010.html | 29 + .../the-script-element/execution-timing/011.html | 30 + .../the-script-element/execution-timing/012.html | 30 + .../the-script-element/execution-timing/013.html | 28 + .../the-script-element/execution-timing/014.html | 28 + .../the-script-element/execution-timing/015.html | 34 ++ .../the-script-element/execution-timing/015a.html | 31 + .../the-script-element/execution-timing/016.html | 28 + .../the-script-element/execution-timing/017.html | 33 ++ .../the-script-element/execution-timing/018.html | 35 ++ .../the-script-element/execution-timing/019.html | 31 + .../the-script-element/execution-timing/020.html | 28 + .../the-script-element/execution-timing/021.html | 28 + .../the-script-element/execution-timing/022.html | 30 + .../the-script-element/execution-timing/023.html | 30 + .../the-script-element/execution-timing/024.html | 32 ++ .../the-script-element/execution-timing/025.html | 30 + .../the-script-element/execution-timing/026.html | 33 ++ .../the-script-element/execution-timing/027.html | 30 + .../the-script-element/execution-timing/028.html | 29 + .../the-script-element/execution-timing/030.html | 39 ++ .../the-script-element/execution-timing/031.html | 30 + .../the-script-element/execution-timing/032.html | 29 + .../the-script-element/execution-timing/033.html | 35 ++ .../the-script-element/execution-timing/034.html | 28 + .../the-script-element/execution-timing/035.html | 34 ++ .../the-script-element/execution-timing/036.html | 34 ++ .../the-script-element/execution-timing/037.html | 33 ++ .../the-script-element/execution-timing/038.html | 34 ++ .../the-script-element/execution-timing/039.html | 39 ++ .../the-script-element/execution-timing/040.html | 34 ++ .../the-script-element/execution-timing/041.html | 29 + .../the-script-element/execution-timing/042.html | 29 + .../the-script-element/execution-timing/043.html | 31 + .../the-script-element/execution-timing/044.html | 28 + .../the-script-element/execution-timing/045.html | 28 + .../the-script-element/execution-timing/046.html | 27 + .../the-script-element/execution-timing/047.html | 28 + .../the-script-element/execution-timing/048.html | 28 + .../the-script-element/execution-timing/049.html | 28 + .../the-script-element/execution-timing/050.html | 50 ++ .../the-script-element/execution-timing/051.html | 29 + .../the-script-element/execution-timing/052.html | 26 + .../the-script-element/execution-timing/053.html | 31 + .../the-script-element/execution-timing/054.html | 33 ++ .../the-script-element/execution-timing/055.html | 32 ++ .../the-script-element/execution-timing/056.html | 30 + .../the-script-element/execution-timing/057.html | 31 + .../the-script-element/execution-timing/058.html | 29 + .../the-script-element/execution-timing/059.html | 30 + .../the-script-element/execution-timing/060.html | 32 ++ .../the-script-element/execution-timing/061.html | 29 + .../the-script-element/execution-timing/062.html | 29 + .../the-script-element/execution-timing/063.html | 30 + .../the-script-element/execution-timing/064.html | 29 + .../the-script-element/execution-timing/065.html | 30 + .../the-script-element/execution-timing/066.html | 31 + .../the-script-element/execution-timing/067.html | 38 ++ .../the-script-element/execution-timing/068.html | 31 + .../the-script-element/execution-timing/069.html | 33 ++ .../the-script-element/execution-timing/070.html | 48 ++ .../the-script-element/execution-timing/071.html | 55 ++ .../the-script-element/execution-timing/072.html | 50 ++ .../the-script-element/execution-timing/073.html | 52 ++ .../the-script-element/execution-timing/074.html | 49 ++ .../the-script-element/execution-timing/075.html | 42 ++ .../the-script-element/execution-timing/076.html | 32 ++ .../the-script-element/execution-timing/077.html | 41 ++ .../the-script-element/execution-timing/078.html | 44 ++ .../the-script-element/execution-timing/079.html | 28 + .../the-script-element/execution-timing/081.html | 31 + .../the-script-element/execution-timing/082.html | 35 ++ .../the-script-element/execution-timing/083.html | 48 ++ .../the-script-element/execution-timing/084.html | 47 ++ .../the-script-element/execution-timing/085.html | 24 + .../the-script-element/execution-timing/086.html | 24 + .../the-script-element/execution-timing/087.html | 24 + .../the-script-element/execution-timing/088.html | 24 + .../the-script-element/execution-timing/089.html | 34 ++ .../the-script-element/execution-timing/090.html | 34 ++ .../the-script-element/execution-timing/091.html | 31 + .../the-script-element/execution-timing/092.html | 26 + .../the-script-element/execution-timing/094.html | 23 + .../the-script-element/execution-timing/095.html | 24 + .../the-script-element/execution-timing/096.html | 30 + .../the-script-element/execution-timing/097.html | 29 + .../the-script-element/execution-timing/099.html | 19 + .../the-script-element/execution-timing/101.html | 35 ++ .../the-script-element/execution-timing/102.html | 24 + .../the-script-element/execution-timing/103.html | 39 ++ .../the-script-element/execution-timing/104.html | 39 ++ .../the-script-element/execution-timing/105.html | 31 + .../execution-timing/106-defer-import.html | 14 + .../execution-timing/106-defer-noimport.html | 14 + .../execution-timing/106-external-import.html | 14 + .../106-external-module-import.html | 14 + .../106-external-module-noimport.html | 14 + .../execution-timing/106-external-noimport.html | 14 + .../execution-timing/106-import-xhtml.xhtml | 20 + .../execution-timing/106-import.html | 19 + .../execution-timing/106-module-import.html | 19 + .../execution-timing/106-module-noimport.html | 19 + .../execution-timing/106-noimport-xhtml.xhtml | 20 + .../execution-timing/106-noimport.html | 19 + .../execution-timing/107-import.html | 21 + .../execution-timing/107-noimport.html | 21 + .../the-script-element/execution-timing/108.html | 25 + .../the-script-element/execution-timing/109.html | 29 + .../the-script-element/execution-timing/110.html | 30 + .../the-script-element/execution-timing/111.html | 33 ++ .../the-script-element/execution-timing/112.html | 30 + .../the-script-element/execution-timing/113.html | 31 + .../the-script-element/execution-timing/114.html | 26 + .../the-script-element/execution-timing/115.html | 26 + .../the-script-element/execution-timing/116.html | 24 + .../the-script-element/execution-timing/117.html | 25 + .../the-script-element/execution-timing/118.html | 25 + .../the-script-element/execution-timing/119.html | 31 + .../the-script-element/execution-timing/120.html | 17 + .../the-script-element/execution-timing/121.html | 17 + .../the-script-element/execution-timing/122.html | 28 + .../the-script-element/execution-timing/123.html | 28 + .../the-script-element/execution-timing/124.html | 25 + .../the-script-element/execution-timing/125.html | 28 + .../the-script-element/execution-timing/126.html | 29 + .../the-script-element/execution-timing/127.html | 34 ++ .../the-script-element/execution-timing/128.html | 34 ++ .../the-script-element/execution-timing/129.html | 40 ++ .../the-script-element/execution-timing/130.html | 34 ++ .../the-script-element/execution-timing/131.html | 22 + .../the-script-element/execution-timing/132.html | 22 + .../the-script-element/execution-timing/133.html | 29 + .../the-script-element/execution-timing/134.html | 28 + .../the-script-element/execution-timing/135.html | 28 + .../the-script-element/execution-timing/136.html | 33 ++ .../the-script-element/execution-timing/137.html | 21 + .../the-script-element/execution-timing/138.html | 30 + .../the-script-element/execution-timing/139.html | 30 + .../the-script-element/execution-timing/140.html | 24 + .../the-script-element/execution-timing/141.html | 26 + .../the-script-element/execution-timing/142.html | 27 + .../the-script-element/execution-timing/143.html | 31 + .../the-script-element/execution-timing/144.html | 28 + .../the-script-element/execution-timing/145.html | 24 + .../execution-timing/146-href.html | 22 + .../the-script-element/execution-timing/146.html | 23 + .../the-script-element/execution-timing/147.html | 40 ++ .../the-script-element/execution-timing/148.html | 40 ++ .../the-script-element/execution-timing/149.html | 59 ++ .../execution-timing/150-import-xhtml.xhtml | 21 + .../execution-timing/150-import.html | 20 + .../execution-timing/150-noimport-xhtml.xhtml | 20 + .../execution-timing/150-noimport.html | 20 + .../execution-timing/css/background.css | 1 + .../execution-timing/css/import.css | 1 + .../execution-timing/non-external-no-import.html | 27 + .../pages/helloworld-postMessage.html | 19 + .../execution-timing/pages/helloworld.html | 15 + .../execution-timing/scripts/check-style-sheet.js | 4 + .../execution-timing/scripts/count-script-tags.js | 1 + .../execution-timing/scripts/find-body.js | 4 + .../execution-timing/scripts/find-foo.js | 2 + .../execution-timing/scripts/include-1.js | 1 + .../execution-timing/scripts/include-10.js | 1 + .../execution-timing/scripts/include-11.js | 4 + .../execution-timing/scripts/include-2.js | 1 + .../execution-timing/scripts/include-3.js | 3 + .../execution-timing/scripts/include-4.js | 3 + .../execution-timing/scripts/include-5.js | 7 + .../execution-timing/scripts/include-6.js | 6 + .../execution-timing/scripts/include-7.js | 1 + .../execution-timing/scripts/include-8.js | 4 + .../execution-timing/scripts/include-9.js | 2 + .../execution-timing/testlib/testlib.js | 43 ++ .../the-script-element/external-script-utf8.js | 5 + .../external-script-windows1250.js | 5 + .../the-script-element/fetch-src/alpha/base.html | 15 + .../the-script-element/fetch-src/alpha/test.js | 1 + .../the-script-element/fetch-src/beta/test.js | 1 + .../fetch-src/empty-with-base.html | 27 + .../the-script-element/fetch-src/empty.html | 32 ++ .../the-script-element/fetch-src/failure.html | 25 + .../the-script-element/fetch-src/unreachable.js | 1 + .../scripting-1/the-script-element/historical.html | 53 ++ .../dynamic-import-with-assertion-argument.any.js | 18 + .../import-assertions/empty-assertion-clause.html | 19 + .../import-assertions/empty-assertion-clause.js | 2 + .../import-assertions/empty-type-assertion.js | 2 + .../import-assertions/export-hello.js | 1 + .../the-script-element/import-assertions/hello.js | 1 + .../invalid-import-errors-order.html | 36 ++ .../invalid-type-assertion-error.html | 28 + .../import-assertions/invalid-type-assertion.js | 2 + .../import-assertions/javascript-type-assertion.js | 2 + .../import-assertions/js-type-assertion.js | 2 + .../import-assertions/unsupported-assertion.html | 22 + .../import-assertions/unsupported-assertion.js | 2 + .../dynamic-import-with-attributes-argument.any.js | 18 + .../import-attributes/empty-attributes-clause.html | 19 + .../import-attributes/empty-attributes-clause.js | 2 + .../import-attributes/empty-type-attribute.js | 2 + .../import-attributes/export-hello.js | 1 + .../the-script-element/import-attributes/hello.js | 1 + .../invalid-import-errors-order.html | 36 ++ .../invalid-type-attribute-error.html | 28 + .../import-attributes/invalid-type-attribute.js | 2 + .../import-attributes/javascript-type-attribute.js | 2 + .../import-attributes/js-type-attribute.js | 2 + .../import-attributes/unsupported-attribute.html | 22 + .../import-attributes/unsupported-attribute.js | 2 + .../the-script-element/is-module-goal.mjs | 1 + .../the-script-element/is-script-goal.js | 3 + .../json-module-assertions/array.json | 1 + .../json-module-assertions/bom-utf-16be.json | Bin 0 -> 40 bytes .../json-module-assertions/bom-utf-16le.json | Bin 0 -> 40 bytes .../json-module-assertions/bom-utf-8.json | 1 + .../json-module-assertions/charset-2.html | 19 + .../json-module-assertions/charset-bom.any.js | 17 + .../json-module-assertions/charset.html | 37 ++ .../cors-crossorigin-requests.html | 33 ++ .../credentials-iframe.sub.html | 33 ++ .../json-module-assertions/credentials.sub.html | 55 ++ .../json-module-assertions/cross-origin.py | 16 + ...ossorigin-import-parse-error-with-cors.sub.html | 15 + .../crossorigin-import-with-cors.sub.html | 15 + .../crossorigin-import-without-cors.sub.html | 15 + .../json-module-assertions/data.json | 3 + .../json-module-assertions/false.json | 1 + .../json-module-assertions/integrity-matches.js | 2 + .../json-module-assertions/integrity-mismatches.js | 2 + .../json-module-assertions/integrity.html | 28 + .../invalid-content-type.any.js | 17 + .../json-module-service-worker-test.https.html | 29 + .../json-module-assertions/load-error-events.html | 67 +++ .../json-module-assertions/load-error-events.py | 14 + .../json-module-assertions/module.html | 18 + .../json-module-assertions/module.json | 3 + .../json-module-assertions/non-object.any.js | 14 + .../json-module-assertions/null.json | 1 + .../json-module-assertions/parse-error.html | 21 + .../json-module-assertions/parse-error.json | 1 + .../json-module-assertions/referrer-checker.py | 6 + .../referrer-policies.sub.html | 84 +++ .../json-module-assertions/repeated-imports.any.js | 65 +++ .../script-element-json-src.html | 14 + .../serviceworker-dynamic-import.js | 5 + .../json-module-assertions/serviceworker.js | 1 + .../json-module-assertions/string.json | 1 + .../json-module-assertions/true.json | 1 + .../json-module-assertions/utf-8.json | 4 + .../json-module-assertions/valid-content-type.html | 46 ++ .../json-module-assertions/windows-1250.json | 4 + .../the-script-element/json-module/array.json | 1 + .../json-module/bom-utf-16be.json | Bin 0 -> 40 bytes .../json-module/bom-utf-16le.json | Bin 0 -> 40 bytes .../the-script-element/json-module/bom-utf-8.json | 1 + .../the-script-element/json-module/charset-2.html | 19 + .../json-module/charset-bom.any.js | 17 + .../the-script-element/json-module/charset.html | 37 ++ .../json-module/cors-crossorigin-requests.html | 33 ++ .../json-module/credentials-iframe.sub.html | 33 ++ .../json-module/credentials.sub.html | 55 ++ .../the-script-element/json-module/cross-origin.py | 16 + ...ossorigin-import-parse-error-with-cors.sub.html | 15 + .../crossorigin-import-with-cors.sub.html | 15 + .../crossorigin-import-without-cors.sub.html | 15 + .../the-script-element/json-module/data.json | 3 + .../the-script-element/json-module/false.json | 1 + .../json-module/integrity-matches.js | 2 + .../json-module/integrity-mismatches.js | 2 + .../the-script-element/json-module/integrity.html | 28 + .../json-module/invalid-content-type.any.js | 17 + .../json-module-service-worker-test.https.html | 29 + .../json-module/load-error-events.html | 67 +++ .../json-module/load-error-events.py | 14 + .../the-script-element/json-module/module.html | 18 + .../the-script-element/json-module/module.json | 3 + .../json-module/non-object.any.js | 14 + .../the-script-element/json-module/null.json | 1 + .../json-module/parse-error.html | 21 + .../json-module/parse-error.json | 1 + .../json-module/referrer-checker.py | 6 + .../json-module/referrer-policies.sub.html | 84 +++ .../json-module/repeated-imports.any.js | 65 +++ .../json-module/script-element-json-src.html | 14 + .../json-module/serviceworker-dynamic-import.js | 5 + .../json-module/serviceworker.js | 1 + .../the-script-element/json-module/string.json | 1 + .../the-script-element/json-module/true.json | 1 + .../the-script-element/json-module/utf-8.json | 4 + .../json-module/valid-content-type.html | 46 ++ .../json-module/windows-1250.json | 4 + .../the-script-element/load-error-events-1.html | 68 +++ .../the-script-element/load-error-events-2.html | 22 + .../the-script-element/load-error-events-3.html | 22 + .../scripting-1/the-script-element/log.py | 13 + .../checkpoint-after-window-onerror-module.html | 9 + .../checkpoint-after-window-onerror.html | 9 + ...int-after-workerglobalscope-onerror-module.html | 14 + ...checkpoint-after-workerglobalscope-onerror.html | 13 + .../microtasks/checkpoint-importScripts.any.js | 40 ++ ...evaluation-order-1-nothrow-importScripts.any.js | 11 + ...evaluation-order-1-nothrow-static-import.any.js | 5 + .../evaluation-order-1-throw-importScripts.any.js | 22 + .../evaluation-order-1-throw-static-import.any.js | 5 + .../microtasks/evaluation-order-1.html | 34 ++ .../microtasks/evaluation-order-2.any.js | 5 + .../microtasks/evaluation-order-2.html | 8 + .../microtasks/evaluation-order-3.any.js | 5 + .../microtasks/evaluation-order-3.html | 8 + .../microtasks/evaluation-order-4.html | 18 + .../checkpoint-after-error-event-worker-module.js | 2 + .../checkpoint-after-error-event-worker.js | 2 + .../resources/checkpoint-after-error-event.js | 89 +++ .../resources/evaluation-order-1-nothrow-setup.js | 5 + .../resources/evaluation-order-1-nothrow.js | 2 + .../resources/evaluation-order-1-throw-setup.js | 10 + .../resources/evaluation-order-1-throw.js | 4 + .../resources/evaluation-order-2-setup.js | 10 + .../microtasks/resources/evaluation-order-2.1.mjs | 8 + .../microtasks/resources/evaluation-order-2.2.mjs | 7 + .../resources/evaluation-order-3-setup.js | 7 + .../microtasks/resources/evaluation-order-3.1.mjs | 11 + .../microtasks/resources/evaluation-order-3.2.mjs | 5 + .../microtasks/resources/evaluation-order-4.1.mjs | 8 + .../microtasks/resources/evaluation-order-4.2.mjs | 5 + .../microtasks/resources/evaluation-order-setup.js | 30 + .../microtasks/resources/resolve-then-throw.js | 3 + .../module/bad-module-specifier.js | 3 + .../the-script-element/module/charset-01.html | 52 ++ .../the-script-element/module/charset-02.html | 26 + .../the-script-element/module/charset-03.html | 37 ++ .../module/choice-of-error-1.html | 37 ++ .../module/choice-of-error-1a.js | 2 + .../module/choice-of-error-1b.js | 2 + .../module/choice-of-error-2.html | 37 ++ .../module/choice-of-error-2a.js | 2 + .../module/choice-of-error-2b.js | 2 + .../module/choice-of-error-3.html | 38 ++ .../module/choice-of-error-3a.js | 2 + .../module/choice-of-error-3b.js | 2 + .../module/compilation-error-1.html | 28 + .../module/compilation-error-2.html | 28 + .../the-script-element/module/credentials.sub.html | 68 +++ .../module/crossorigin-common.js | 8 + .../module/crossorigin-import-different.sub.html | 15 + .../crossorigin-import-missingheader.sub.html | 15 + .../module/crossorigin-import-same.sub.html | 15 + .../module/crossorigin-import-wrongheader.sub.html | 15 + .../module/crossorigin-root-different.sub.html | 11 + .../module/crossorigin-root-missingheader.sub.html | 11 + .../module/crossorigin-root-same.sub.html | 11 + .../module/crossorigin-root-wrongheader.sub.html | 11 + .../module/crossorigin-scripterror.js | 8 + .../the-script-element/module/crossorigin.html | 43 ++ .../module/currentScript-null.html | 13 + .../the-script-element/module/currentscript.js | 1 + .../module/custom-element-exception.html | 31 + .../module/cycle-tdz-access-a.js | 3 + .../the-script-element/module/cycle-tdz-access.js | 3 + .../module/cycle-unresolvable-a.js | 2 + .../module/cycle-unresolvable.js | 2 + .../module/duplicated-imports-1.html | 23 + .../module/duplicated-imports-2.html | 23 + .../alpha/base-url-worker-importScripts.html | 7 + .../dynamic-import/alpha/base-url-worker.sub.html | 8 + .../module/dynamic-import/alpha/base-url.sub.html | 28 + .../module/dynamic-import/alpha/code-cache.js | 9 + .../module/dynamic-import/alpha/import.js | 1 + .../alpha/worker-importScripts.sub.js | 15 + .../module/dynamic-import/beta/code-cache.js | 9 + .../module/dynamic-import/beta/import.js | 1 + .../module/dynamic-import/beta/redirect.py | 19 + .../dynamic-import/blob-url-workers.window.js | 60 ++ .../module/dynamic-import/blob-url.any.js | 66 +++ .../module/dynamic-import/code-cache-base-url.html | 19 + .../module/dynamic-import/code-cache-nonce.html | 43 ++ .../module/dynamic-import/delay-load-event.html | 25 + ...dynamic-imports-credentials-setTimeout.sub.html | 11 + .../dynamic-imports-credentials.sub.html | 11 + .../dynamic-imports-fetch-error.sub.html | 61 ++ .../dynamic-imports-script-error.html | 53 ++ .../module/dynamic-import/dynamic-imports.html | 12 + .../module/dynamic-import/gamma/base-url.sub.js | 58 ++ .../module/dynamic-import/gamma/code-cache.js | 9 + .../module/dynamic-import/gamma/import.js | 1 + .../dynamic-import/inline-event-handler.html | 19 + .../module/dynamic-import/microtasks/basic.any.js | 32 ++ .../microtasks/css-import-in-worker.any.js | 14 + .../dynamic-import/microtasks/empty-module.css | 4 + .../dynamic-import/microtasks/empty-module.js | 4 + .../dynamic-import/microtasks/serviceworker.any.js | 14 + .../module/dynamic-import/microtasks/ticker.js | 13 + .../microtasks/with-import-assertions.any.js | 15 + .../microtasks/worklet-ref.https.html | 10 + .../dynamic-import/microtasks/worklet.https.html | 43 ++ .../no-active-script-classic-manual.html | 55 ++ .../no-active-script-module-manual.html | 55 ++ .../propagate-nonce-external-classic.html | 5 + .../propagate-nonce-external-module.html | 5 + .../dynamic-import/propagate-nonce-external.js | 7 + .../propagate-nonce-inline-classic.html | 12 + .../propagate-nonce-inline-module.html | 12 + .../dynamic-import/resources/blob-url-worker.js | 11 + .../resources/code-cache-nonce-iframe.sub.html | 4 + .../dynamic-import/resources/code-cache-nonce.js | 4 + .../dynamic-import/resources/empty-iframe.html | 9 + .../resources/status-changing-script.py | 18 + .../resources/v8-code-cache-iframe.sub.html | 9 + .../dynamic-import/resources/v8-code-cache.js | 74 +++ .../module/dynamic-import/scripts/Function.js | 2 + .../module/dynamic-import/scripts/eval.js | 2 + .../scripts/inline-event-handlers-UA-code.js | 3 + .../dynamic-import/scripts/no-active-script.js | 5 + .../scripts/reflected-inline-event-handlers.js | 3 + .../module/dynamic-import/scripts/setTimeout.js | 2 + ...ring-compilation-base-url-external-classic.html | 63 +++ ...tring-compilation-base-url-external-module.html | 64 +++ ...string-compilation-base-url-inline-classic.html | 73 +++ .../string-compilation-base-url-inline-module.html | 73 +++ .../dynamic-import/string-compilation-classic.html | 54 ++ .../dynamic-import/string-compilation-module.html | 54 ++ .../string-compilation-nonce-classic.html | 104 ++++ .../string-compilation-nonce-module.html | 103 ++++ .../string-compilation-of-promise-result.html | 83 +++ .../string-compilation-other-document.html | 79 +++ .../module/dynamic-import/v8-code-cache.html | 42 ++ .../module/error-and-slow-dependency.html | 20 + .../the-script-element/module/error-type-1.html | 34 ++ .../the-script-element/module/error-type-1.js | 2 + .../the-script-element/module/error-type-2.html | 35 ++ .../the-script-element/module/error-type-2.js | 2 + .../the-script-element/module/error-type-3.html | 35 ++ .../the-script-element/module/error-type-3.js | 2 + .../module/errorhandling-parseerror-common.js | 10 + .../module/errorhandling-parseerror-dependent.html | 16 + .../module/errorhandling-parseerror-dependent.js | 2 + ...errorhandling-parseerror-dependentmultiple.html | 24 + .../errorhandling-parseerror-dependentmultiple.js | 2 + .../module/errorhandling-parseerror-root.html | 15 + .../module/errorhandling-wrongMimetype-import.js | 8 + .../module/errorhandling-wrongMimetype.js | 7 + .../the-script-element/module/errorhandling.html | 60 ++ .../module/evaluation-error-1.html | 35 ++ .../module/evaluation-error-2.html | 34 ++ .../module/evaluation-error-3.html | 37 ++ .../module/evaluation-error-4.html | 37 ++ .../module/execorder-dynamicordered2.js | 3 + .../module/execorder-dynamicordered3.js | 3 + .../module/execorder-dynamicordered4.js | 3 + .../module/execorder-dynamicunordered1.js | 3 + .../module/execorder-dynamicunordered2.js | 3 + .../module/execorder-parsedordered2.js | 3 + .../module/execorder-parsedordered4.js | 3 + .../module/execorder-parsedunordered1.js | 3 + .../module/execorder-parsedunordered2.js | 3 + .../the-script-element/module/execorder.html | 106 ++++ .../the-script-element/module/export-default.js | 2 + .../module/export-something-nested.js | 2 + .../the-script-element/module/export-something.js | 3 + .../the-script-element/module/fetch-error-1.html | 15 + .../the-script-element/module/fetch-error-2.html | 15 + .../the-script-element/module/fetch-error-2.js | 2 + .../module/import-meta/import-meta-dependent.js | 1 + .../module/import-meta/import-meta-object.any.js | 20 + .../import-meta/import-meta-resolve-importmap.html | 57 ++ .../import-meta-resolve-multiple-scripts.html | 39 ++ .../module/import-meta/import-meta-resolve.any.js | 77 +++ .../module/import-meta/import-meta-root.js | 2 + .../module/import-meta/import-meta-url.any.js | 38 ++ .../module/import-meta/import-meta-url.html | 34 ++ .../module/import-meta/postmessage-worker.js | 12 + .../module/import-meta/resources/export-1.mjs | 1 + .../module/import-meta/resources/export-2.mjs | 1 + .../import-meta/resources/export-import-meta.mjs | 2 + .../import-meta/resources/store-import-meta.html | 5 + .../module/import-something-namespace.js | 5 + .../module/import-subgraph-404.html | 14 + .../the-script-element/module/imports-a.js | 3 + .../the-script-element/module/imports-b.js | 1 + .../the-script-element/module/imports-cycle-a.js | 2 + .../the-script-element/module/imports-cycle-b.js | 2 + .../the-script-element/module/imports-cycle.js | 6 + .../the-script-element/module/imports-inc-a.js | 2 + .../the-script-element/module/imports-inc-ab.js | 5 + .../the-script-element/module/imports-inc-b.js | 2 + .../module/imports-self-inner.js | 2 + .../the-script-element/module/imports-self.js | 6 + .../the-script-element/module/imports.html | 64 +++ .../module/inactive-context-import.html | 20 + .../module/inline-async-execorder.html | 29 + .../module/inline-async-onload.html | 28 + .../module/inline-defer-onload.html | 29 + .../module/inline-no-async-onload.html | 28 + .../module/instantiation-error-1.html | 35 ++ .../module/instantiation-error-1.js | 1 + .../module/instantiation-error-2.html | 35 ++ .../module/instantiation-error-3.html | 37 ++ .../module/instantiation-error-4.html | 32 ++ .../module/instantiation-error-4a.js | 2 + .../module/instantiation-error-4b.js | 3 + .../module/instantiation-error-4c.js | 2 + .../module/instantiation-error-4d.js | 2 + .../module/instantiation-error-5.html | 32 ++ .../module/instantiation-error-5a.js | 2 + .../module/instantiation-error-5b.js | 3 + .../module/instantiation-error-5c.js | 2 + .../module/instantiation-error-5d.js | 3 + .../module/instantiation-error-5e.js | 2 + .../module/instantiation-error-6.html | 36 ++ .../module/instantiation-error-6a.js | 2 + .../module/instantiation-error-6b.js | 3 + .../module/instantiation-error-6c.js | 2 + .../module/instantiation-error-6d.js | 2 + .../module/instantiation-error-7.html | 37 ++ .../module/instantiation-error-7a.js | 2 + .../module/instantiation-error-7b.js | 3 + .../module/instantiation-error-7c.js | 3 + .../module/instantiation-error-7d.js | 2 + .../module/instantiation-error-7e.js | 2 + .../module/instantiation-error-7f.js | 2 + .../module/instantiation-error-8.html | 27 + .../module/integrity-matches-inner.js | 1 + .../the-script-element/module/integrity-matches.js | 2 + .../module/integrity-mismatches-inner.js | 1 + .../module/integrity-mismatches.js | 2 + .../the-script-element/module/integrity.html | 40 ++ .../module/late-namespace-request.html | 20 + .../module/late-star-export-request.html | 25 + .../module/load-error-events-inline.html | 61 ++ .../module/load-error-events.html | 61 ++ .../module/missing-export-nested.js | 2 + .../the-script-element/module/missing-export.js | 2 + .../module/module-import-referrer.html | 48 ++ .../module/module-import-referrer.js | 2 + .../module/module-in-xhtml.xhtml | 20 + .../module/module-vs-script-1.html | 17 + .../module/module-vs-script-2.html | 17 + .../the-script-element/module/nested-imports-a.js | 1 + .../the-script-element/module/nested-imports-b.js | 2 + .../the-script-element/module/nested-imports-c.js | 2 + .../the-script-element/module/nested-imports-d.js | 3 + .../the-script-element/module/nested-imports-e.js | 2 + .../the-script-element/module/nested-imports-f.js | 2 + .../the-script-element/module/nested-imports-g.js | 2 + .../the-script-element/module/nested-imports-h.js | 2 + .../the-script-element/module/nested-imports.html | 29 + .../module/nested-missing-export.js | 2 + .../module/nomodule-attribute.html | 18 + .../module/referrer-no-referrer.sub.html | 68 +++ .../referrer-origin-when-cross-origin.sub.html | 82 +++ .../module/referrer-origin.sub.html | 71 +++ .../referrer-policy-for-descendants.sub.html | 122 ++++ .../module/referrer-same-origin.sub.html | 77 +++ .../module/referrer-strict-policies.sub.html | 38 ++ .../module/referrer-unsafe-url.sub.html | 81 +++ .../module/resources/404-but-js.asis | 4 + .../module/resources/500-but-js.asis | 4 + .../module/resources/check-cookie.py | 20 + .../module/resources/credentials-iframe.sub.html | 50 ++ .../module/resources/delayed-modulescript.py | 7 + .../dynamic-import-credentials-helper.sub.js | 67 +++ .../dynamic-import-credentials-iframe.sub.html | 51 ++ ...c-import-credentials-setTimeout-iframe.sub.html | 56 ++ .../module/resources/fast-module.js | 1 + .../import-non-utf8-with-charset-header.js | 1 + .../module/resources/import-non-utf8.js | 1 + .../import-referrer-checker-insecure.sub.js | 1 + ...import-referrer-checker-insecure.sub.js.headers | 1 + .../resources/import-referrer-checker.sub.js | 2 + .../import-referrer-checker.sub.js.headers | 1 + .../import-remote-origin-referrer-checker.sub.js | 2 + ...igin-referrer-checker-from-remote-origin.sub.js | 2 + ...errer-checker-from-remote-origin.sub.js.headers | 1 + .../resources/import-utf8-with-charset-header.js | 1 + .../module/resources/import-utf8.js | 1 + .../module/resources/imports-404-but-js.js | 1 + .../module/resources/imports-500-but-js.js | 1 + .../module/resources/imports-b-cross-origin.sub.js | 1 + .../module/resources/referrer-checker.py | 6 + .../module/resources/slow-module.js | 3 + .../module/script-for-event.html | 93 +++ .../module/set-currentScript-on-window.js | 1 + .../module/single-evaluation-1.html | 20 + .../module/single-evaluation-2.html | 20 + .../the-script-element/module/slow-cycle.html | 11 + .../module/slow-module-graph-a.js | 3 + .../module/slow-module-graph-b.js | 1 + .../the-script-element/module/specifier-error.html | 22 + .../module/syntaxerror-nested.js | 2 + .../the-script-element/module/syntaxerror.js | 2 + .../the-script-element/module/this-nested.js | 2 + .../scripting-1/the-script-element/module/this.js | 1 + .../the-script-element/module/throw-error.js | 3 + .../the-script-element/module/throw-nested.js | 2 + .../scripting-1/the-script-element/module/throw.js | 2 + .../the-script-element/module/throw2.js | 2 + .../sibling-imports-not-blocked.any.js | 11 + ...ports-not-blocked__microtask__check-get-sync.js | 1 + ...orts-not-blocked__microtask__check-set-async.js | 3 + ...bling-imports-not-blocked__microtask__parent.js | 2 + ...ng-imports-not-blocked__task__check-get-sync.js | 1 + ...g-imports-not-blocked__task__check-set-async.js | 3 + .../sibling-imports-not-blocked__task__parent.js | 2 + .../the-script-element/module/type.html | 24 + ...moving-between-documents-during-evaluation.html | 59 ++ .../moving-between-documents/README.md | 16 + ...eHTMLDocument-fetch-error-external-classic.html | 14 + ...teHTMLDocument-fetch-error-external-module.html | 14 + ...eHTMLDocument-parse-error-external-classic.html | 14 + ...teHTMLDocument-parse-error-external-module.html | 14 + ...reateHTMLDocument-success-external-classic.html | 14 + ...createHTMLDocument-success-external-module.html | 14 + ...repare-iframe-fetch-error-external-classic.html | 14 + ...prepare-iframe-fetch-error-external-module.html | 14 + ...repare-iframe-parse-error-external-classic.html | 14 + ...prepare-iframe-parse-error-external-module.html | 14 + ...-prepare-iframe-parse-error-inline-classic.html | 14 + ...er-prepare-iframe-success-external-classic.html | 14 + ...ter-prepare-iframe-success-external-module.html | 14 + ...fter-prepare-iframe-success-inline-classic.html | 14 + ...eHTMLDocument-fetch-error-external-classic.html | 14 + ...teHTMLDocument-fetch-error-external-module.html | 14 + ...eHTMLDocument-parse-error-external-classic.html | 14 + ...teHTMLDocument-parse-error-external-module.html | 14 + ...ateHTMLDocument-parse-error-inline-classic.html | 14 + ...eateHTMLDocument-parse-error-inline-module.html | 14 + ...eateHTMLDocument-success-empty-src-classic.html | 14 + ...reateHTMLDocument-success-empty-src-module.html | 14 + ...reateHTMLDocument-success-external-classic.html | 14 + ...createHTMLDocument-success-external-module.html | 14 + ...-createHTMLDocument-success-inline-classic.html | 14 + ...e-createHTMLDocument-success-inline-module.html | 14 + ...repare-iframe-fetch-error-external-classic.html | 14 + ...prepare-iframe-fetch-error-external-module.html | 14 + ...repare-iframe-parse-error-external-classic.html | 14 + ...prepare-iframe-parse-error-external-module.html | 14 + ...-prepare-iframe-parse-error-inline-classic.html | 14 + ...e-prepare-iframe-parse-error-inline-module.html | 14 + ...e-prepare-iframe-success-empty-src-classic.html | 14 + ...re-prepare-iframe-success-empty-src-module.html | 14 + ...re-prepare-iframe-success-external-classic.html | 14 + ...ore-prepare-iframe-success-external-module.html | 14 + ...fore-prepare-iframe-success-inline-classic.html | 14 + ...efore-prepare-iframe-success-inline-module.html | 14 + ...eHTMLDocument-fetch-error-external-classic.html | 14 + ...teHTMLDocument-fetch-error-external-module.html | 14 + ...eHTMLDocument-parse-error-external-classic.html | 14 + ...teHTMLDocument-parse-error-external-module.html | 14 + ...reateHTMLDocument-success-external-classic.html | 14 + ...createHTMLDocument-success-external-module.html | 14 + ...e-back-iframe-fetch-error-external-classic.html | 14 + ...ve-back-iframe-fetch-error-external-module.html | 14 + ...e-back-iframe-parse-error-external-classic.html | 14 + ...ve-back-iframe-parse-error-external-module.html | 14 + ...ove-back-iframe-parse-error-inline-classic.html | 14 + .../move-back-iframe-success-external-classic.html | 14 + .../move-back-iframe-success-external-module.html | 14 + .../move-back-iframe-success-inline-classic.html | 14 + .../moving-between-documents/ordering/README.md | 6 + .../ordering/delay-load-event-1.html | 12 + .../ordering/delay-load-event-2.html | 15 + .../ordering/delay-load-event-iframe.html | 4 + .../moving-between-documents/ordering/helper.js | 31 + .../ordering/in-order.html | 35 ++ .../ordering/parser-blocking.html | 41 ++ .../resources/moving-between-documents-helper.js | 214 +++++++ .../resources/moving-between-documents-iframe.py | 102 ++++ .../resources/slow-flag-setter.py | 29 + .../moving-between-documents/tools/generate.py | 61 ++ .../the-script-element/muted-errors-iframe.html | 2 + .../the-script-element/muted-errors.sub.html | 85 +++ .../the-script-element/nomodule-reflect.html | 75 +++ .../nomodule-set-on-async-classic-script.html | 63 +++ .../nomodule-set-on-external-module-script.html | 28 + .../nomodule-set-on-inline-classic-scripts.html | 56 ++ .../nomodule-set-on-inline-module-script.html | 32 ++ ...et-on-synchronously-loaded-classic-scripts.html | 41 ++ .../promise-reject-and-remove.html | 10 + .../the-script-element/resources/bom-utf-16be.js | Bin 0 -> 156 bytes .../the-script-element/resources/bom-utf-16le.js | Bin 0 -> 156 bytes .../the-script-element/resources/bom-utf-8.js | 2 + .../the-script-element/resources/cocoa-module.js | 5 + .../the-script-element/resources/cross-origin.py | 20 + .../the-script-element/resources/exports-cocoa.js | 3 + .../the-script-element/resources/flag-setter.js | 3 + .../resources/load-error-events-helpers.js | 47 ++ .../resources/load-error-events.py | 15 + .../promise-reject-and-remove-iframe.html | 12 + .../resources/script-type-and-language-js.js | 141 +++++ .../resources/set-script-executed.js | 1 + .../the-script-element/resources/syntax-error.js | 1 + .../the-script-element/resources/throw.js | 1 + .../the-script-element/script-charset-01.html | 89 +++ .../the-script-element/script-charset-02.html | 41 ++ .../the-script-element/script-charset-03.html | 20 + .../script-crossorigin-network.sub.html | 120 ++++ .../the-script-element/script-crossorigin.html | 39 ++ .../the-script-element/script-defer-xhtml.xhtml | 31 + .../the-script-element/script-defer.html | 26 + .../script-for-event-xhtml.xhtml | 22 + .../the-script-element/script-for-event.html | 93 +++ .../script-noembed-noframes-iframe.xhtml | 36 ++ .../script-not-executed-after-shutdown-child.html | 12 + .../script-not-executed-after-shutdown.html | 19 + .../script-not-executed-after-shutdown.js | 1 + .../script-not-found-not-executed-2.py | 4 + .../script-not-found-not-executed.html | 19 + .../script-not-found-not-executed.py | 4 + .../script-onerror-insertion-point-1.html | 12 + .../script-onerror-insertion-point-2.html | 13 + .../script-onload-insertion-point.html | 12 + .../the-script-element/script-onload-string.html | 17 + .../script-referrerpolicy-idl.html | 26 + .../the-script-element/script-supports.html | 52 ++ .../script-text-modifications-csp.html | 52 ++ .../script-text-modifications.html | 40 ++ .../the-script-element/script-text-xhtml.xhtml | 28 + .../the-script-element/script-text.html | 72 +++ .../script-type-and-language-empty.html | 48 ++ .../script-type-and-language-js-svg.svg | 37 ++ .../script-type-and-language-js-xhtml.xhtml | 42 ++ .../script-type-and-language-js.html | 35 ++ .../script-type-and-language-with-params.html | 41 ++ .../the-script-element/script-type-whitespace.html | 27 + .../the-script-element/scripting-enabled.html | 16 + .../the-script-element/serve-json-then-js.py | 21 + .../the-script-element/serve-with-content-type.py | 17 + .../script-onerror-insertion-point-1-helper.html | 2 + .../script-onerror-insertion-point-2-helper.html | 2 + .../script-onload-insertion-point-helper.html | 2 + .../script-onload-insertion-point-helper.js | 1 + .../node-document.html | 150 +++++ .../tag-name.xhtml | 16 + .../template-child-nodes.html | 102 ++++ .../outerhtml.html | 71 +++ .../css-user-agent-style-sheet-test-001-ref.html | 6 + .../css-user-agent-style-sheet-test-001.html | 12 + .../css-user-agent-style-sheet-test-002.html | 12 + .../css-user-agent-style-sheet-test-003.html | 19 + .../template-clone-children.html | 82 +++ .../templates-copy-document-owner.html | 126 +++++ .../template-contents-owner-document-type.html | 83 +++ .../template-contents-owner-test-001.html | 44 ++ .../template-contents-owner-test-002.html | 67 +++ .../definitions/template-contents.html | 172 ++++++ .../innerhtml-on-templates/innerhtml.html | 105 ++++ .../resources/end-template-tag-in-body.html | 12 + .../resources/end-template-tag-in-head.html | 12 + .../resources/frameset-end-tag.html | 10 + .../head-template-contents-div-no-end-tag.html | 12 + .../head-template-contents-table-no-end-tag.html | 14 + .../resources/html-start-tag.html | 10 + .../resources/template-child-nodes-div.xhtml | 14 + .../resources/template-child-nodes-nested.xhtml | 16 + .../resources/template-contents-attribute.html | 10 + .../resources/template-contents-body.html | 10 + .../template-contents-div-no-end-tag.html | 12 + .../resources/template-contents-empty.html | 11 + .../resources/template-contents-frameset.html | 10 + .../resources/template-contents-head.html | 10 + .../resources/template-contents-html.html | 10 + .../resources/template-contents-nested.html | 10 + .../template-contents-table-no-end-tag.html | 14 + .../resources/template-contents-text.html | 10 + .../resources/template-contents.html | 12 + .../resources/template-descendant-body.html | 12 + .../resources/template-descendant-frameset.html | 12 + .../resources/template-descendant-head.html | 13 + .../resources/two-templates.html | 17 + .../serializing-html-templates/outerhtml.html | 70 +++ .../template-element/content-attribute.html | 114 ++++ .../template-element/node-document-changes.html | 192 +++++++ .../template-element/template-as-a-descendant.html | 135 +++++ ...te-construction-in-inactive-document-crash.html | 5 + .../template-content-hierarcy.html | 81 +++ ...emplate-content-in-inactive-document-crash.html | 7 + ...te-content-move-to-inactive-document-crash.html | 7 + .../template-content-node-document.html | 59 ++ .../template-element/template-content.html | 63 +++ .../template-element/template-descendant-body.html | 26 + .../template-descendant-frameset.html | 62 ++ .../template-element/template-descendant-head.html | 26 + ...element-clone-into-inactive-document-crash.html | 7 + ...-set-inner-html-in-inactive-document-crash.html | 6 + .../the-template-element/template-table-crash.html | 13 + .../original-id.json | 1 + .../tests/html/semantics/selectors/META.yml | 2 + .../selectors/case-sensitivity/values.window.js | 91 +++ .../selectors/pseudo-classes/active-disabled.html | 54 ++ .../selectors/pseudo-classes/autofill.html | 11 + .../pseudo-classes/checked-001-manual.html | 18 + .../pseudo-classes/checked-indeterminate.window.js | 27 + .../pseudo-classes/checked-type-change.html | 24 + .../selectors/pseudo-classes/checked.html | 44 ++ .../selectors/pseudo-classes/default.html | 64 +++ .../selectors/pseudo-classes/dir-dynamic.html | 47 ++ .../dir-html-input-dynamic-text.html | 21 + .../semantics/selectors/pseudo-classes/dir.html | 99 ++++ .../semantics/selectors/pseudo-classes/dir01.html | 18 + .../selectors/pseudo-classes/disabled.html | 80 +++ .../selectors/pseudo-classes/enabled.html | 43 ++ .../selectors/pseudo-classes/focus-autofocus.html | 24 + .../selectors/pseudo-classes/focus-iframe.html | 5 + .../semantics/selectors/pseudo-classes/focus.html | 51 ++ .../indeterminate-radio-group-ref.html | 21 + .../pseudo-classes/indeterminate-radio-group.html | 28 + .../pseudo-classes/indeterminate-radio.html | 26 + .../pseudo-classes/indeterminate-type-change.html | 24 + .../selectors/pseudo-classes/indeterminate.html | 37 ++ .../input-checkbox-switch.tentative.window.js | 75 +++ .../inrange-outofrange-type-change.html | 43 ++ .../pseudo-classes/inrange-outofrange.html | 84 +++ .../pseudo-classes/invalid-after-clone.html | 28 + .../semantics/selectors/pseudo-classes/link.html | 21 + .../placeholder-shown-type-change.html | 27 + .../readwrite-readonly-type-change.html | 36 ++ .../pseudo-classes/readwrite-readonly.html | 118 ++++ .../pseudo-classes/required-optional-hidden.html | 36 ++ .../pseudo-classes/required-optional.html | 35 ++ .../semantics/selectors/pseudo-classes/utils.js | 20 + .../valid-invalid-fieldset-disconnected.html | 57 ++ .../selectors/pseudo-classes/valid-invalid.html | 146 +++++ .../tests/html/semantics/tabular-data/META.yml | 2 + .../cellIndex.html | 50 ++ .../html/semantics/tabular-data/historical.html | 25 + .../tabular-data/html-table-section-element.js | 22 + .../processing-model-1/col-span-limits.html | 59 ++ .../processing-model-1/span-limits.html | 66 +++ .../the-caption-element/caption_001.html | 70 +++ .../the-table-element/caption-methods.html | 276 +++++++++ .../the-table-element/createTBody.html | 173 ++++++ .../the-table-element/delete-caption.html | 94 +++ .../the-table-element/insertRow-method-01.html | 24 + .../the-table-element/insertRow-method-02.html | 34 ++ .../the-table-element/insertRow-method-03.html | 32 ++ .../tabular-data/the-table-element/remove-row.html | 64 +++ .../tabular-data/the-table-element/tBodies.html | 40 ++ .../tabular-data/the-table-element/tFoot.html | 65 +++ .../tabular-data/the-table-element/tHead.html | 74 +++ .../the-table-element/table-insertRow.html | 56 ++ .../tabular-data/the-table-element/table-rows.html | 234 ++++++++ .../tabular-data/the-tbody-element/deleteRow.html | 61 ++ .../tabular-data/the-tbody-element/insertRow.html | 56 ++ .../tabular-data/the-tbody-element/rows.html | 15 + .../tabular-data/the-tfoot-element/rows.html | 15 + .../tabular-data/the-thead-element/rows.html | 15 + .../tabular-data/the-tr-element/cells.html | 28 + .../tabular-data/the-tr-element/deleteCell.html | 61 ++ .../tabular-data/the-tr-element/insertCell.html | 64 +++ .../tabular-data/the-tr-element/rowIndex.html | 77 +++ .../the-tr-element/sectionRowIndex.html | 130 +++++ .../semantics/text-level-semantics/historical.html | 29 + ...k-handler-with-null-browsing-context-crash.html | 21 + .../the-a-element/a-download-404.py | 2 + .../the-a-element/a-download-click-404.html | 25 + .../a-download-click-redirect-to-javascript.html | 29 + .../the-a-element/a-download-click.html | 33 ++ .../the-a-element/a-stringifier.html | 16 + .../the-a-element/a.text-getter-01.html | 34 ++ .../the-a-element/a.text-setter-01.html | 41 ++ .../the-a-element/resources/a-download-404.html | 2 + .../the-a-element/resources/a-download-click.html | 2 + .../a-download-redirect-to-javascript.html | 5 + .../resources/a-onclick-handler-iframe.html | 1 + .../the-b-element/b-usage-notref.html | 6 + .../the-b-element/b-usage.html | 8 + .../the-bdi-element/bdi-auto-dir-default-ref.html | 36 ++ .../the-bdi-element/bdi-auto-dir-default.html | 46 ++ .../bdi-neutral-missing-pdf-ref.html | 44 ++ .../the-bdi-element/bdi-neutral-missing-pdf.html | 56 ++ .../the-bdi-element/bdi-neutral-nested-ref.html | 44 ++ .../the-bdi-element/bdi-neutral-nested.html | 52 ++ .../the-bdi-element/bdi-neutral-number-ref.html | 44 ++ .../the-bdi-element/bdi-neutral-number.html | 53 ++ .../the-bdi-element/bdi-neutral-separate-ref.html | 36 ++ .../the-bdi-element/bdi-neutral-separate.html | 47 ++ .../bdi-neutral-to-another-bdi-1-ref.html | 47 ++ .../bdi-neutral-to-another-bdi-1.html | 58 ++ .../bdi-neutral-to-another-bdi-2-ref.html | 47 ++ .../bdi-neutral-to-another-bdi-2.html | 59 ++ .../bdi-neutral-to-letter-following-1-ref.html | 45 ++ .../bdi-neutral-to-letter-following-1.html | 54 ++ .../bdi-neutral-to-letter-following-2-ref.html | 45 ++ .../bdi-neutral-to-letter-following-2.html | 54 ++ .../bdi-neutral-to-letter-preceding-1-ref.html | 45 ++ .../bdi-neutral-to-letter-preceding-1.html | 54 ++ .../bdi-neutral-to-letter-preceding-2-ref.html | 45 ++ .../bdi-neutral-to-letter-preceding-2.html | 54 ++ .../bdi-neutral-to-number-following-1-ref.html | 45 ++ .../bdi-neutral-to-number-following-1.html | 54 ++ .../bdi-neutral-to-number-following-2-ref.html | 45 ++ .../bdi-neutral-to-number-following-2.html | 53 ++ .../bdi-neutral-to-surrounding-run-ref.html | 44 ++ .../bdi-neutral-to-surrounding-run.html | 56 ++ .../the-bdi-element/bdi-neutral-wrapped-ref.html | 52 ++ .../the-bdi-element/bdi-neutral-wrapped.html | 73 +++ .../bdi-paragraph-level-container-ref.html | 36 ++ .../bdi-paragraph-level-container.html | 46 ++ .../the-bdo-element/bdo-child.html | 17 + .../the-bdo-element/bdo-ltr.html | 15 + .../the-bdo-element/bdo-override.html | 18 + .../the-bdo-element/bidi-001-ref.html | 11 + .../the-bdo-element/bidi-001.html | 14 + .../br-bidi-in-inline-ancestors-ref.html | 38 ++ .../br-bidi-in-inline-ancestors.html | 59 ++ .../the-br-element/br-bidi-ref.html | 19 + .../the-br-element/br-bidi.html | 22 + .../the-ruby-element/rt-without-ruby-crash.html | 11 + .../the-ruby-element/ruby-usage-notref.html | 6 + .../the-ruby-element/ruby-usage.html | 8 + .../text-level-semantics/the-time-element/001.html | 68 +++ .../the-wbr-element/wbr-element-ref.html | 10 + .../the-wbr-element/wbr-element.html | 12 + .../the-link-element/attr-link-fetchpriority.html | 26 + .../the-link-element/resources/stylesheet.css | 3 + 3091 files changed, 109515 insertions(+) create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/disabled-checkbox-click.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch-additional.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/disabledElement.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled-keyboard.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/disabled-elements/fieldset-event-propagation.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/conditionally-block-rendering-on-link-media-attr.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-link-stylesheet-does-not-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-style-element-does-not-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/link-stylesheet-with-non-match-media-does-not-block-render.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-link-stylesheet-does-not-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-style-element-does-not-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-match-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-not-match-does-not-block-script.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/stylesheet.py create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/link-style.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/utils.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/LinkStyle.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/support/alternate.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/support/emptytitle.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/support/normal.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/support/notitle.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/styling/support/unmatch.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-data.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-javascript.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_iframe_src_navigation.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_location_assignment.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all.headers create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/document-without-browsing-context.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.https.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive-notref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rellist.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-limited-quirks.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-quirks.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/bad.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/css.py create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/empty-href.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/good.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-load-error-events.sub.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-rel-attribute.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/stylesheet.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/style.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.css create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.py create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-attribute-changes.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-empty-content-value.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-first-valid-applies.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-insert.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-no-content-value.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-normal-descendant-change.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove-head.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-body.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-head.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-shadow-tree.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/support/compute-root-color-scheme.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-1.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-2.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-1.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-2.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/dynamic-append.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/;url=foo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/__dir__.headers create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo'bar create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.py create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.sub.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/ufoo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urfoo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/url foo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urlfoo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/x;url=foo create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-lower.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-message.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-mixed.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-other.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment.xhtml create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/mutations.window.js create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-error-01.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-load-after-mutate.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_disabled.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_events.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_async.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_event.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media_change.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_non_matching_media.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_change.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_html.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_svg.svg create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/support/css-red.txt create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive-ref.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-01.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-02.xhtml create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-03.html create mode 100644 testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-04.xhtml create mode 100644 testing/web-platform/tests/html/semantics/edits/the-del-element/del_effect.html create mode 100644 testing/web-platform/tests/html/semantics/edits/the-ins-element/ins_effect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/META.yml create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-html.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-img.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-js.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-mp4.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-not-found.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-type-only.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/bfcache/resources/common.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference-test-data.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_controls_present-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_base.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_overriding_volume-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_present-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_check.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_loudest-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_silent-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/controlsList.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/error-codes/error.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_volumechange.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/historical.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-resumes-onload.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-env-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/media-min-width.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-beforeunload-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-dialogs-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-print-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/media_fragment_seek.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_progress.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_initial.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_true_during_pause.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/pitch-detector.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/loop-from-ended.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-different-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/preserves-pitch.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-hidden.optional.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_initial.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_object_blob.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cloneNode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/003.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/004.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/005.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/006.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/007.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/008.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/009.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/010.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/011.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/012.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/013.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/014.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/015.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/016.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/017.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/018.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/019.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/020.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/021.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/022.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/023.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/024.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/025.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/026.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/027.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/028.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/029.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/030.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/031.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/032.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/033.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/034.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/035.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/036.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/037.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/038.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/039.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/040.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/041.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/042.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/043.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/044.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/045.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/046.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/cors-tester.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/remove-cookie.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/set-cookie.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/crashtests/track-element-src-aborted-load-onerror-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/no-cuechange-before-play.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-ltr.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/bom.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-fast.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-gaps.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-html.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id-error.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id-error.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-cuetext.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-header.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-note.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-chrono-order.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-no-separation.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-overlapping.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/default-styles.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/degenerate-cues.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/empty-cue.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities-wrong.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/interspersed-non-cue.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/iso2022jp3.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/large-timestamp.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata-area.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/missed-cues.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-newline-at-eof.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-timings.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-webvtt.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-ltr.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings-bad-separation.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/simple-captions.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/sorted-dispatch.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour-error.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour-errors.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-whitespace.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/unsupported-markup.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/utf8.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-ltr.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice-bad.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/vp8-vorbis-webvtt.webm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-file.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-rubbish.vtt create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-empty-string.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable-fragment.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-order.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange-dynamically-created-track-element.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-exit.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-seeking.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-pause-on-exit.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-seeking.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-sorted-before-dispatch.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-data-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-default-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled-addcue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-aborted-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-id.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-insert-after-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-large-timestamp.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-error-readyState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-element-readyState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-active-cue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-by-setting-innerHTML.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-insert-ready-state.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-inband.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-alignment.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-blank-lines.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-bom.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-class-markup.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-identifiers.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-no-id.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-recovery.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size-align.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-degenerate-cues.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-empty-cue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-entities.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-interspersed-non-cue.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-markup.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-newlines.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-no-timings.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-positioning.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-settings.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timestamp.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-whitespace.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-unsupported-markup.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-valign.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-voice.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/user-interface/muted.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_controls_present-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_loop_base.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_overriding_volume-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_present-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_check.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_loudest-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_silent-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/media-elements/volume_nonfinite.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/resources/common.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/resources/should-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/resources/should-not-load.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-coords.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-download-click.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-processing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-shape.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-stringifier.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/resources/area-download-click.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-area-element/support/hit-test.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-appendChild-to-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_001.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_002.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_content-ref.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-001.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-002.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-003.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-004.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-005.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.emptystring.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.basic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.nested.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/imagedata.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.dataURI.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob-cross-realm-callback-report-exception.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.null.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.png.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.delete.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.exists.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.extend.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.name.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.prototype.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.replace.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-change-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-dimension.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-focus.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-gbcr.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-subdocument.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-named-attribute-detached-context-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-network-error.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-svg-navigation-resets-size.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_child.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_grandchild.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_parentage.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/content_document_changes_only_after_load_matures.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_child.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_grandchild.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/hittest-detached-iframe-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allow.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-append-to-child-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-display-none-with-object.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-document-move-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-first-load-canceled-second-load-blank.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-eager.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-script-disabled-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-001.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-queued-navigations.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-times.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-referrerpolicy-change.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-to-eager.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-network-error.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-with-base-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-with-base.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_harness.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_navigate_ancestor-1.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation_without_user_gesture.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_descendants.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_forward.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_itself.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_other_frame_popup.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads.sub.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_block_downloads.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/multiple-iframes-with-allow-scripts-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/empty.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/hello-world.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/iframe-loading-lazy-in-viewport.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/post-origin-to-opener.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox-top-navigation-helper.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/subframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/unload-reporter.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_child.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_grandchild.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_parentage.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed-frame.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-toggle-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-special-cases.tentative.sub.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child.tentative.sub.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-escalate-privileges.tentative.sub.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-grandchild.tentative.sub.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_001.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_002.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_003-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_004.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_005.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_006-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_007-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_008-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_010-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_011.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_012.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_013.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_014.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_015.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_016.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_017.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_018.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_019.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_020-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_021-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_022-manual.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_023.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_024.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_025.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_026.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_027.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_028.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_029.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_030.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_031.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_032.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/src-repeated-in-ancestor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-anchor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-attribute-reset.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_change_hash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_process_attributes.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/stash.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/download_stash.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-checks-contentDocument.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-opens-modals.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-on-popup.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-without-user-gesture-failed.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-send-message-to-the-opener.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-tries-to-navigate-parent-and-sends-result-to-grandparent.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-history.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-its-child.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-itself.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-which-content-height-equals-400px.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-with-object.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_001.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_002.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_003.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_004.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_006.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_007.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_008.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_010.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_012.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020a.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021a.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_022.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_023.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_024.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_026.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_027.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_028.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_029.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_031.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_032.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_block_modals.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_download_helper.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/load-into-the-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/navigation-changed-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_helper.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-fail.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-iframe-content.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/3.jpg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adopt-from-image-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adoption.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/already-loaded-image-sync-width.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-onload.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/below-viewport-image-loading-lazy-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/brokenimg.jpg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/currentSrc-blob-cache.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/data-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-image-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-detached.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-until-move-to-empty-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/disconnected-image-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-adopt-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-destroyed-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/historical-progress-event.window.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-1.jpg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-eager.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-available.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-below-viewport-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-crossorigin-change.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-different-crossorigin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-empty-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-001.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-002.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-script-disabled-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-far.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal-far.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-4.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-5.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-viewport-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-into-script-disabled-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multiple-times.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-negative-margin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-referrerpolicy-change.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-relevant-mutations.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-srcset.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-subframe-detached-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-to-eager.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-use-list-of-available-images.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-zero-intersection-area.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-created-in-active-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-picture-ancestor.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-src-in-synthetic-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img.complete.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invalid-src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invisible-image.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-after.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-before.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-inside.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-manual.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-does-not-coalesce-in-flight-requests.sub.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-matching.https.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/move-element-and-scroll.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/natural-size-orientation.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/non-active-document.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/nonexistent-image.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-below-viewport-image-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-dimension-getter.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-image-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/null-image-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/picture-loading-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations-lazy.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/remove-element-and-scroll.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/blue-10.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/green.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-and-stash.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-below-viewport.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-in-viewport.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/newwindow.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/red.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/referrer-checker-img.py create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/scrolling-below-viewport-image-lazy-loading-in-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/implicit-sizes-ignores-width.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/reference/sizes-auto-rendering-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-3.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/parse-a-sizes-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/source-media-outside-doc.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/avoid-reload-on-resize.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/common.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png.headers create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/resized.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/external-sheet.svg create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/red-bg.css create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/relevant-mutations.js create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-media.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-src-complete.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/current-request-microtask.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-source-set.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-img-element/usemap-casing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/block-object-with-ruby-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-attributes.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-construct-in-document-with-null-browsing-context-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-events.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-handler.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-display-none-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-object-fallback-2.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-remove-param-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test0.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test1.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-object-element/usemap-casing.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-import-to-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-tabindex.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content-ref.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_image.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_text.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_crash_empty_src.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster-ref.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused-ref.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused.html create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_size_preserved_after_ended.html create mode 100644 testing/web-platform/tests/html/semantics/forms/META.yml create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-only-if-applies.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-auto.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-inherited.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formaction.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname.js create mode 100644 testing/web-platform/tests/html/semantics/forms/beforeinput.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-checkValidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-reportValidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-badInput.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-customError.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooShort.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate-datalist.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/infinite_backtracking.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/input-maxlength-emoji.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/input-pattern-dynamic-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/inputwillvalidate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/number-input-lang-validationMessage-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/radio-valueMissing.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/reportValidity-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/support/validator.js create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-email-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-password-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-search-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-tel-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-text-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-url-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooLong-textarea-delete-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-email-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-password-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-search-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-tel-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-text-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-url-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/constraints/tooShort-textarea-add-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/association.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_attribute.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_3.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/SubmitEvent.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/enctypes-helper.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv-form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-3.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-default-action.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-multiple-targets.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault-click.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-requestsubmit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-to-different-origin-frame.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-echo.py create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submit-iframe-then-location-navigate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/getactionurl.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/historical.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/implicit-submission.optional.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-form-submit.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-navigation-then-form-submit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/multipart-formdata.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/newline-normalization.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/request-submit-activation.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/file-submission.py create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form-submission.py create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/getactionurl-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/jsurl-form-submit-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/location.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/submission-checks.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-entity-body.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-file.sub.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/text-plain.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/url-encoded.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-0/urlencoded2.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe-helper.py create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-request-header.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-base-target.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-button-target.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-form-target.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-input-target.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/resources/endpoint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/resources/form-target-request-header-helper.py create mode 100644 testing/web-platform/tests/html/semantics/forms/form-submission-target/resources/reltester.js create mode 100644 testing/web-platform/tests/html/semantics/forms/historical-search-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/historical.html create mode 100644 testing/web-platform/tests/html/semantics/forms/input-change-event-properties.html create mode 100644 testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-event-realm.html create mode 100644 testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/resetting-a-form/support/reset-form-event-realm.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/defaultSelection.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/original-id.json create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-after-content-change.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-value-interactions.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/selection.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/setSelectionRange.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/textarea-selection-while-parsing.xhtml create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setRangeText.html create mode 100644 testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/active-onblur.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-frame.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-keyup-prevented.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-checkvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-click-submits.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-events.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-labels.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-menu-historical.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-children.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children-jssubmit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-jssubmit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-type-enumerated-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-type.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-untrusted-key-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-validation.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-validationmessage.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-validity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate-readonly-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-datalist-element/datalistoptions.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-datalist-element/remove-datalist-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/README.md create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/aria-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/baseline-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-appearance-none-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-contents-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-none-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-div-display-contents-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-none-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-presentation-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-collapse-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-hidden-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/flexbox-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/grid-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-abspos-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-display-none-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-visibility-hidden-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-contents-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-none-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-float-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-role-group-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-collapse-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-hidden-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/multiple-legends-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/role-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/shadow-dom-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/title-attribute-and-empty-legend-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-001.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-002.xhtml create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-003.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-checkvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validationmessage.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-willvalidate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection-with-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission-with-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-action.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-autocomplete.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-checkvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-filter.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-interfaces-01.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-matches.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-01.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-02.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-sameobject.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-length.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-nameditem.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/form-requestsubmit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action-with-base.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action-and-base.sub.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action.sub.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-form-element/resources/target/form-action-url-target.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-active-contenteditable.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-contenteditable-navigate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/button.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/change-to-empty-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur-with-click.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-being-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-prevented-default.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-untrusted-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox-click-events.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/checked.xhtml create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/clone.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/cloning-steps.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/color.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/date.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local-trailing-zeros.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/datetime.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/defaultValue-clobbering.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/disabled-click-picker-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/email-set-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/email.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/file-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/files.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change-on-blur.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive-child.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/hidden.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/image-click-form-data.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/image01-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/image01.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-checkvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-disabled-fieldset-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-form-detach-style-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-height.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-importNode-to-detached-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-labels.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-list.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-seconds-leading-zeroes.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-submit-remove-jssubmit.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-button.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-empty-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox-switch.tentative.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-number-rtl-invalid-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-types.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-untrusted-key-event.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-validationmessage.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-validity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-value-invalidstateerr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-invalidstateerr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-stepping.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-invalidstateerr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-stepping.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-whitespace.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-width.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/input-willvalidate.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/invalid-datalist-options-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/large-step-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-number.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/minlength.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/month.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-cr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-crlf.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/number-constraint-validation.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/number-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/number.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/password-delete-space.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/password.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/pattern_attribute.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-disconnected-group-owner.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-double-activate-pseudo.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-groupname-case.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-keyboard-navigation-order.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-morphed.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio-multiple-selected.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/radio.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-added-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-change-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-duplicate-id-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-nonexistent.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-add-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-remove-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-value-change-repaint.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.https.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01-notref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03-notref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/range.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/required_attribute.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/reset.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/image-submit-click.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/loadresolver.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html.headers create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/show-picker-child-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html.headers create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/search_input.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/selection-pointer.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/selection-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/selection.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-cross-origin-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-user-gesture.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/telephone.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/text.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/time-2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/time-datalist-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/time-focus-dynamic-value-change.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/time.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-file-to-text-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/url.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode-weekmonth.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-input-element/week.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-interactive-content.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-labelable-content.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-unlabelable-content.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/forward-focus-to-associated-element.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/iframe-label-attributes.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/label-attributes.sub.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/label-inside-anchor.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/labelable-elements.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/proxy-click-to-associated-element.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-label-element/proxy-modifier-click-to-associated-element.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-legend-element/HTMLLegendElement.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-legend-element/legend-form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-meter-element/meter-min-rendering-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-meter-element/meter-min-rendering.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-meter-element/meter.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-optgroup-element/optgroup-disabled-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-optgroup-element/optgroup-removal.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/dynamic-content-change-rendering-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/dynamic-content-change-rendering.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-disabled-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-element-constructor.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-form.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-index.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-label-value.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-label.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-selected.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-text-backslash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-text-label.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-text-recurse.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-text-setter.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-text-spaces.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-option-element/option-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-output-element/mutations.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-output-element/output-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-output-element/output-validity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-output-element/output.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-progress-element/progress-2.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-progress-element/progress.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-progress-element/progress.window.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-add.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/inserted-or-removed.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/reset-algorithm-rendering-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/reset-algorithm-rendering.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/resources/show-picker-child-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/resources/stylable-select-styles.css create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-add-optgroup.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-add-option-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-add.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-ask-for-reset.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-child-button-and-datalist-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-child-button-and-datalist.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-in-table-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-multiple.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-named-getter.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-parsing.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-remove.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-selectedOptions.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-validity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/select-willvalidate-readonly-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/selected-index.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-being-cv-hidden.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-being-rendered.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-cross-origin-iframe.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-disabled.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-multiple.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-size.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-select-element/show-picker-user-gesture.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/button-type-selectlist-appearance-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/button-type-selectlist-appearance.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-ask-for-reset.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-button-closes-listbox.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-button-type-appearance-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-button-type-appearance.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-button-type-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-default-button-slot-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-default-button-slot.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-disabled.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-events.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-explicit-size-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-explicit-size.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-font-size-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-font-size.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-form-attribute.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-form-elements.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-form-state-restore.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-form-submission.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-keyboard-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-keyboard.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-labels.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-listbox-element-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-listbox-element.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-listbox-fallback-change-crash.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-many-options.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-end-aligned-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-end-aligned.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-part-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-part.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-slot-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-slot.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-visible-overflow-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-marker-visible-overflow.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-nested.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-displayed.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-not-displayed-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-arbitrary-content-not-displayed.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-focusable.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-label-rendering-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-option-label-rendering.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-overflow-x-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-overflow-x.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-parts-structure.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-popover-position-with-zoom.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-popover-position.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-popover.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-pseudo-light-dismiss-invalidation.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-pseudo-open-closed.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-required-attribute.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-rtl-ref.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-rtl.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-behavior-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-part-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-part.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-slot-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selected-value-slot.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selectedoption-element-cloning-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selectedoption-element-cloning.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-selectedoption-element.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-tab-navigation.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-tabindex-order.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-text-only-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-text-only.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-user-select.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-validity.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-value-option.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-value-selectedOption.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-writingmode-lr.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-writingmode-rl.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/selectlist-writingmode-tb-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/support/back.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/support/fake-selectlist.js create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/support/selectlist_button_icon.svg create mode 100644 testing/web-platform/tests/html/semantics/forms/the-selectlist-element/tab-closes-listbox.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/change-to-empty-value.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/cloning-steps.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/multiline-placeholder-cr.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/multiline-placeholder-crlf.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/multiline-placeholder-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/multiline-placeholder.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/placeholder-white-space-notref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/placeholder-white-space.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/support/placeholder.css create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-maxlength.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-minlength.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-newline-bidi-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-placeholder-lineheight.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-placeholder-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-select-event-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-select-manual.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-setcustomvalidity.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-splittext-with-range-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-splittext-with-range-simple-crash.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-textLength.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-type.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-validity-clone.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/textarea-validity-valueMissing-inside-datalist.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/value-defaultValue-textContent-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/value-defaultValue-textContent.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrap-enumerated-ascii-case-insensitive-child.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrap-enumerated-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrap-reflect-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrap-reflect-1a.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrap-reflect-1b.html create mode 100644 testing/web-platform/tests/html/semantics/forms/the-textarea-element/wrapping-transformation.window.js create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/META.yml create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-dd-element/grouping-dd.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-div-element/grouping-div.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-dl-element/grouping-dl.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-dt-element/grouping-dt.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-figure-element/grouping-figure.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-hr-element/grouping-hr.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-novalue-manual.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-003-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-003.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-004-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-004.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-005-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-005.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-006.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-007.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-display-list-item-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-display-list-item.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-menu-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-menu.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-mixed-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-mixed.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-not-dir-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-not-dir.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-ol-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-ol.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-parent-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-parent.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-skip-no-boxes-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-skip-no-boxes.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-ul-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-list-owner-ul.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-not-being-rendered-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-not-being-rendered.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-li-element/grouping-li.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/grouping-ol.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1a.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1b.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1c.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1d.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-1e.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-2-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ol-element/reversed-2.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-p-element/grouping-p.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-pre-element/grouping-pre.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-ref.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html create mode 100644 testing/web-platform/tests/html/semantics/grouping-content/the-ul-element/grouping-ul.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/META.yml create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/common/accesskey.js create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/first-input-after-legend-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/first-input-before-legend-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/first-input-inside-legend-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/focusable-legend-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/focusable-legend-sibling-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/input-outside-fieldset-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/label-sibling-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/commands/legend/no-fieldset-parent-manual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/contextmenu-historical.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/auto-expand-ax-slot-recalc-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/auto-expand-details-element-fragment.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/auto-expand-window-find-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/closed-details-layout-apis.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details-add-summary-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details-add-summary.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details-cq-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details-findstring-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details-keyboard-activation.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/details.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/display-table-with-rt-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/modified-details-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/name-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/nested-details-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/nested-top-layer-elements-in-details-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/support/empty-html-document.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-details-element/toggleEvent.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/WEB_FEATURES.yml create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-descendant-selector-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-descendant-selector.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-display-none-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-display-none.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-style-change-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-style-change.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-in-flow-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-in-flow.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-inherits-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-inherits.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-stacking-order-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/backdrop-stacking-order.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/centering.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/child-sequential-focus.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/closed-dialog-does-not-block-mouse-events.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/default-color.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-audio-video-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-autofocus-just-once.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-autofocus-multiple-times.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-autofocus.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-events.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-preventDefault.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-input.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-select.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event-async.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-via-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-enabled.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-previous-outside.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusability.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-disconnected.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-inert.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-prevent-autofocus.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission-unusual.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-inert.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-keydown-preventDefault.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-no-throw-requested-state.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-not-in-tree-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open-2.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay-re-add-during-transition.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-return-value.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-remove.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-contain-ancestor.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fixed-position-cb-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fo-ancestor.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-transformed-ancestor.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-will-change-ancestor.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-previous-iframe.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/green-dialog-and-backdrop.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-does-not-match-disabled-selector.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-inlines.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-uneditable.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unfocusable.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unselectable.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-svg-hittest.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-ancestor-is-inert.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-blocks-mouse-events.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-visibility-hidden.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-selection.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/multiple-centered-dialogs.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-does-not-block-mouse-events.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-layout.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/pass-dialog-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/remove-dialog-should-unblock-document.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/common.js create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/dialog.css create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/inert-focus-in-frames-frame1.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/inert-focus-in-frames-frame2.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/submit.jpg create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/show-modal-focusing-steps.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/showmodal-in-shadow-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/showmodal-shadow-sibling-frame-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/simulated-click-inert.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/submit-dialog-close-event.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-clip.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-filter.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-mask.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-clip.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-hidden.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-scroll.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-transform.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-relative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-static.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-ref.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/activation-behavior.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-with-inline-element.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-without-link.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/click-behavior-optional.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/display-table-with-rt-crash.html create mode 100644 testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/summary-untrusted-key-event.html create mode 100644 testing/web-platform/tests/html/semantics/interfaces.html create mode 100644 testing/web-platform/tests/html/semantics/interfaces.js create mode 100644 testing/web-platform/tests/html/semantics/invokers/idlharness.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invokeelement-interface.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invokeevent-dispatch-shadow.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invokeevent-interface.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-button-event-dispatch.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-fullscreen-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-generic-eventtarget-crash.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-on-audio-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-on-details-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-on-popover-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/invoketarget-on-video-behavior.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/invokers/resources/invoker-utils.js create mode 100644 testing/web-platform/tests/html/semantics/links/META.yml create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-same-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.js create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer-when-downgrade.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin-when-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-same-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin-when-cross-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-unsafe-url.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.html create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.js create mode 100644 testing/web-platform/tests/html/semantics/links/downloading-resources/resources/inspect-header.py create mode 100644 testing/web-platform/tests/html/semantics/links/following-hyperlinks/activation-behavior.window.js create mode 100644 testing/web-platform/tests/html/semantics/links/following-hyperlinks/active-document.window.js create mode 100644 testing/web-platform/tests/html/semantics/links/hyperlink-auditing/headers.optional.html create mode 100644 testing/web-platform/tests/html/semantics/links/hyperlink-auditing/resources/stash-headers.py create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_attribute-getter-setter.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_getter.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_noopener.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-parsable-url-getter-setter.window.js create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-opaque-path-url-getter-setter.window.js create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-url-getter-setter.window.js create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-popup.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-1.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-2.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/target_blank_implicit_noopener.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener.html create mode 100644 testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener_base.html create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/alternate-css-ref.html create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/alternate-css.html create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/alternate-import.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/alternate.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-lower.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-mixed.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-other.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-ref.html create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.css create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.html create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/original-id.json create mode 100644 testing/web-platform/tests/html/semantics/links/linktypes/preferred.css create mode 100644 testing/web-platform/tests/html/semantics/permission-element/no-end-tag-no-contents.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/WEB_FEATURES.yml create mode 100644 testing/web-platform/tests/html/semantics/popovers/hide-other-popover-side-effects.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/invoker-show-crash.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/label-in-invoker.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/light-dismiss-event-ordering.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-idl-property.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-multicol-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-nesting.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-and-svg-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-and-svg.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-appearance-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-appearance.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-attribute-all-elements.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-attribute-basic.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-beforetoggle-opening-event.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-change-type.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-close-request.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-css-properties.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-dialog-crash.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-document-open.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-events.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-focus-harness.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-focus.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hidden-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hidden-display.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hint-crash.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hide.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hover.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-show.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-toggle.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-invoker-reset.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute-hint.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree-nested.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-hint.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-on-scroll.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-with-anchor.tentative.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-manual-crash.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-move-documents.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-not-keyboard-focusable.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-display.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-in-beforetoggle.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-2.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-overlay.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-removal-2.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-removal.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-shadow-dom.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-shadowhost-focus.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-stacking-anchor-attribute.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-stacking-context-ref.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-stacking-context.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-stacking.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-target-action-hover.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-target-element-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-top-layer-combinations.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-top-layer-interactions.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-hints.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-types-with-hints.tentative.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-types.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popover-undefined-remove-crash.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/popovertarget-reflection.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/resources/popover-hover-hide-common.js create mode 100644 testing/web-platform/tests/html/semantics/popovers/resources/popover-invoking-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/popovers/resources/popover-styles.css create mode 100644 testing/web-platform/tests/html/semantics/popovers/resources/popover-top-layer-nesting.js create mode 100644 testing/web-platform/tests/html/semantics/popovers/resources/popover-utils.js create mode 100644 testing/web-platform/tests/html/semantics/popovers/togglePopover.html create mode 100644 testing/web-platform/tests/html/semantics/popovers/toggleevent-interface.html create mode 100644 testing/web-platform/tests/html/semantics/rellist-feature-detection.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/META.yml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-noscript-element/non-html-noscript.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/README.md create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_001.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_002.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_003.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_004.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_005.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_006.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_007.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_008.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_009.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_010.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/async_011.htm create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/cacheable-script-throw.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/charset-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/charset-bom.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/charset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/content-type-checking.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/cors-crossorigin-requests.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/css-module-worker-test.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/import-css-module-basic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/import-css-module-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/integrity.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/referrer-policies.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/relative-urls.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/atImported.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/bad-import.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/basic-large.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/basic.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/bom-utf-16be.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/bom-utf-16le.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/bom-utf-8.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/cross-origin.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/crossorigin-import-parse-error-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/crossorigin-import-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/crossorigin-import-without-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/css-module-without-assertion-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/integrity-matches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/integrity-mismatches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/load-error-events.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/load-relative-url.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/malformed.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/parse-error.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/record-fetch.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/referrer-checker.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/utf-8.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/windows-1250.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/worker-dynamic-import.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/resources/worker.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module-assertions/script-element-css-src.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/charset-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/charset-bom.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/charset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/content-type-checking.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/cors-crossorigin-requests.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/integrity.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/referrer-policies.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/relative-urls.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/atImported.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/basic-large.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/basic.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/bom-utf-16be.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/bom-utf-16le.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/bom-utf-8.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/cross-origin.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/crossorigin-import-parse-error-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/crossorigin-import-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/crossorigin-import-without-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-without-attribute-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/integrity-matches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/integrity-mismatches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/load-error-events.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/load-relative-url.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/parse-error.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/record-fetch.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/referrer-checker.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/utf-8.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/windows-1250.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/css-module/script-element-css-src.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/data-url.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/README.md create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/async-script-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/async-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/defer-script-xml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/defer-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/document-write.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/async-script-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/defer-script-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/defer-script-2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/document-open-write-close.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/document-open-write.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/document-write-close.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/document-write-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/document-write.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/helper.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/sync-script-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/resources/sync-script-2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer-script/support/async-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/defer.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/emptyish-script-elements.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/001.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/002.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/003.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/004.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/005.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/006.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/007.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/008.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/009.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/010.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/011.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/012.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/013.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/014.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/015.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/015a.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/016.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/017.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/018.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/019.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/020.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/021.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/022.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/023.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/024.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/025.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/026.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/027.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/028.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/030.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/031.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/032.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/033.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/034.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/035.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/036.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/037.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/038.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/039.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/040.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/041.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/042.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/043.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/044.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/045.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/046.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/047.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/048.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/049.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/050.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/051.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/052.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/053.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/054.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/055.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/056.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/057.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/058.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/059.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/060.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/061.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/062.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/063.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/064.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/065.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/066.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/067.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/068.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/069.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/070.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/071.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/072.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/073.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/074.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/075.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/076.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/077.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/078.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/079.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/081.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/082.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/083.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/084.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/085.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/086.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/087.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/088.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/089.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/090.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/091.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/092.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/094.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/095.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/096.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/097.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/099.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/101.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/102.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/103.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/104.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/105.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-defer-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-defer-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-external-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-external-module-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-external-module-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-external-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-import-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-module-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-module-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-noimport-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/106-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/107-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/107-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/108.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/109.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/110.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/111.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/112.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/113.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/114.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/115.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/116.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/117.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/118.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/119.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/120.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/121.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/122.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/123.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/124.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/125.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/126.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/127.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/128.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/129.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/130.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/131.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/132.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/133.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/134.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/135.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/136.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/137.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/138.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/139.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/140.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/141.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/142.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/143.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/144.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/145.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/146-href.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/146.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/147.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/148.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/149.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/150-import-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/150-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/150-noimport-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/150-noimport.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/css/background.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/css/import.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/non-external-no-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/pages/helloworld-postMessage.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/pages/helloworld.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/check-style-sheet.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/count-script-tags.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/find-body.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/find-foo.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-10.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-11.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-3.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-4.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-5.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-6.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-7.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-8.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/scripts/include-9.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/testlib/testlib.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/external-script-utf8.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/external-script-windows1250.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/alpha/base.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/alpha/test.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/beta/test.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty-with-base.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/failure.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/unreachable.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/historical.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/dynamic-import-with-assertion-argument.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/empty-assertion-clause.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/empty-assertion-clause.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/empty-type-assertion.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/export-hello.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/hello.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/invalid-import-errors-order.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/invalid-type-assertion-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/invalid-type-assertion.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/javascript-type-assertion.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/js-type-assertion.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/unsupported-assertion.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-assertions/unsupported-assertion.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/dynamic-import-with-attributes-argument.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/empty-attributes-clause.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/empty-attributes-clause.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/empty-type-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/export-hello.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/hello.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/invalid-import-errors-order.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/invalid-type-attribute-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/invalid-type-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/javascript-type-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/js-type-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/unsupported-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/import-attributes/unsupported-attribute.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/is-module-goal.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/is-script-goal.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/array.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/bom-utf-16be.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/bom-utf-16le.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/bom-utf-8.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/charset-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/charset-bom.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/charset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/cors-crossorigin-requests.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/cross-origin.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/crossorigin-import-parse-error-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/crossorigin-import-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/crossorigin-import-without-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/data.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/false.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/integrity-matches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/integrity-mismatches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/integrity.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/invalid-content-type.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/json-module-service-worker-test.https.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/load-error-events.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/module.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/non-object.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/null.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/parse-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/parse-error.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/referrer-checker.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/referrer-policies.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/repeated-imports.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/script-element-json-src.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/serviceworker-dynamic-import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/serviceworker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/string.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/true.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/utf-8.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/valid-content-type.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module-assertions/windows-1250.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/array.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/bom-utf-16be.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/bom-utf-16le.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/bom-utf-8.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/charset-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/charset-bom.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/charset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/cors-crossorigin-requests.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/cross-origin.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/crossorigin-import-parse-error-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/crossorigin-import-with-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/crossorigin-import-without-cors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/data.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/false.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/integrity-matches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/integrity-mismatches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/integrity.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/invalid-content-type.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/json-module-service-worker-test.https.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/load-error-events.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/module.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/non-object.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/null.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/parse-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/parse-error.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/referrer-checker.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/referrer-policies.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/repeated-imports.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/script-element-json-src.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/serviceworker-dynamic-import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/serviceworker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/string.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/true.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/utf-8.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/valid-content-type.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/json-module/windows-1250.json create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/load-error-events-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/load-error-events-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/load-error-events-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/log.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/checkpoint-after-window-onerror-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/checkpoint-after-window-onerror.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/checkpoint-after-workerglobalscope-onerror-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/checkpoint-after-workerglobalscope-onerror.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/checkpoint-importScripts.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-1-nothrow-importScripts.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-1-nothrow-static-import.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-1-throw-importScripts.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-1-throw-static-import.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-2.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-3.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/evaluation-order-4.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/checkpoint-after-error-event-worker-module.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/checkpoint-after-error-event-worker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/checkpoint-after-error-event.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-1-nothrow-setup.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-1-nothrow.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-1-throw-setup.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-1-throw.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-2-setup.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-2.1.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-2.2.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-3-setup.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-3.1.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-3.2.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-4.1.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-4.2.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/evaluation-order-setup.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/microtasks/resources/resolve-then-throw.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/bad-module-specifier.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/charset-01.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/charset-02.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/charset-03.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-1a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-1b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-2a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-2b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-3a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-3b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/compilation-error-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-common.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-different.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-missingheader.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-same.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-wrongheader.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-different.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-missingheader.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-same.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-wrongheader.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin-scripterror.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/crossorigin.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/currentScript-null.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/currentscript.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/custom-element-exception.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/cycle-tdz-access-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/cycle-tdz-access.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/cycle-unresolvable-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/cycle-unresolvable.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/duplicated-imports-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/duplicated-imports-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/base-url-worker-importScripts.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/base-url-worker.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/base-url.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/code-cache.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/alpha/worker-importScripts.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/beta/code-cache.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/beta/import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/beta/redirect.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/blob-url-workers.window.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/blob-url.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/code-cache-base-url.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/code-cache-nonce.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/delay-load-event.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-credentials-setTimeout.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-credentials.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-fetch-error.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-script-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/gamma/base-url.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/gamma/code-cache.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/gamma/import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/inline-event-handler.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/basic.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/css-import-in-worker.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/empty-module.css create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/empty-module.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/serviceworker.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/ticker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/with-import-assertions.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/worklet-ref.https.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/microtasks/worklet.https.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-classic-manual.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-module-manual.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/blob-url-worker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/empty-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/status-changing-script.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/Function.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/eval.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/inline-event-handlers-UA-code.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/no-active-script.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/reflected-inline-event-handlers.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/setTimeout.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-of-promise-result.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-other-document.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/v8-code-cache.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-common.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-root.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype-import.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered3.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered4.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered4.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-default.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something-nested.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-dependent.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-object.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-importmap.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-multiple-scripts.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/postmessage-worker.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-1.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-2.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-import-meta.mjs create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/store-import-meta.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-something-namespace.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-ab.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self-inner.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inactive-context-import.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-onload.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-defer-onload.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-no-async-onload.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6c.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6d.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7c.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7d.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7e.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7f.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches-inner.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches-inner.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export-nested.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-c.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-d.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-e.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-f.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-g.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-h.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-missing-export.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-no-referrer.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin-when-cross-origin.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-policy-for-descendants.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-same-origin.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-strict-policies.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-unsafe-url.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/404-but-js.asis create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/500-but-js.asis create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/delayed-modulescript.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-helper.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-setTimeout-iframe.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/fast-module.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8-with-charset-header.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js.headers create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js.headers create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-remote-origin-referrer-checker.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js.headers create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8-with-charset-header.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-404-but-js.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-500-but-js.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-b-cross-origin.sub.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/slow-module.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/script-for-event.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/set-currentScript-on-window.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-cycle.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-a.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-b.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/specifier-error.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror-nested.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this-nested.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-error.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-nested.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw2.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked.any.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-get-sync.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-set-async.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__parent.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-get-sync.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-set-async.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__parent.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/type.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents-during-evaluation.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/README.md create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-module.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-inline-classic.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/README.md create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/helper.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/in-order.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/parser-blocking.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/moving-between-documents-helper.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/moving-between-documents-iframe.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/slow-flag-setter.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/tools/generate.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/muted-errors-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/muted-errors.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-reflect.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-async-classic-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-external-module-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-classic-scripts.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-module-script.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-synchronously-loaded-classic-scripts.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/promise-reject-and-remove.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16be.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16le.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-8.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cocoa-module.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cross-origin.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/exports-cocoa.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/flag-setter.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events-helpers.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/promise-reject-and-remove-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/script-type-and-language-js.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/set-script-executed.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/syntax-error.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/throw.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-01.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-02.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-03.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin-network.sub.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown-child.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed-2.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-1.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-insertion-point.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-string.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-referrerpolicy-idl.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-supports.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications-csp.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-empty.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-svg.svg create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-xhtml.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-with-params.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-whitespace.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/scripting-enabled.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-json-then-js.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-with-content-type.py create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-1-helper.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-2-helper.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.js create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/tag-name.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/two-templates.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-construction-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-hierarcy.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-move-to-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-element-clone-into-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-set-inner-html-in-inactive-document-crash.html create mode 100644 testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-table-crash.html create mode 100644 testing/web-platform/tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json create mode 100644 testing/web-platform/tests/html/semantics/selectors/META.yml create mode 100644 testing/web-platform/tests/html/semantics/selectors/case-sensitivity/values.window.js create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/active-disabled.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/autofill.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-001-manual.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-indeterminate.window.js create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/default.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-dynamic.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-html-input-dynamic-text.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir01.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/disabled.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/enabled.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group-ref.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/input-checkbox-switch.tentative.window.js create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/invalid-after-clone.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/placeholder-shown-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-type-change.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional-hidden.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/utils.js create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid-fieldset-disconnected.html create mode 100644 testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/META.yml create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/historical.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/html-table-section-element.js create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/col-span-limits.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/span-limits.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-caption-element/caption_001.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/caption-methods.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/createTBody.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/delete-caption.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-01.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-02.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-03.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/remove-row.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tBodies.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tFoot.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tHead.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-insertRow.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-rows.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/deleteRow.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/insertRow.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/rows.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tfoot-element/rows.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-thead-element/rows.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/cells.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/deleteCell.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/insertCell.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/rowIndex.html create mode 100644 testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/historical.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-click-handler-with-null-browsing-context-crash.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-404.py create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-404.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-redirect-to-javascript.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-stringifier.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-404.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-click.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-redirect-to-javascript.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-onclick-handler-iframe.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage-notref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage-notref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-time-element/001.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html create mode 100644 testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html create mode 100644 testing/web-platform/tests/html/semantics/the-link-element/attr-link-fetchpriority.html create mode 100644 testing/web-platform/tests/html/semantics/the-link-element/resources/stylesheet.css (limited to 'testing/web-platform/tests/html/semantics') diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/disabled-checkbox-click.html b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-checkbox-click.html new file mode 100644 index 0000000000..805770c854 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-checkbox-click.html @@ -0,0 +1,26 @@ + + + +Test disabled checkbox does not change state when clicked + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch-additional.tentative.html b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch-additional.tentative.html new file mode 100644 index 0000000000..8ef4e5ccc7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch-additional.tentative.html @@ -0,0 +1,74 @@ + + + + + + + + + + + + + +
+ + + hello world + child + +
+ + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch.tentative.html new file mode 100644 index 0000000000..e2b8846fc3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/disabled-event-dispatch.tentative.html @@ -0,0 +1,57 @@ + + + + + + + + + + + +
+ + + hello world + child + +
+ + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/disabledElement.html b/testing/web-platform/tests/html/semantics/disabled-elements/disabledElement.html new file mode 100644 index 0000000000..03f57424d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/disabledElement.html @@ -0,0 +1,44 @@ + + +Disabled elements + + + + +
+ + + + +
+ + +
+w3 +foobar + + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled-keyboard.tentative.html b/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled-keyboard.tentative.html new file mode 100644 index 0000000000..3aacf21f1d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled-keyboard.tentative.html @@ -0,0 +1,135 @@ + + +KeyboardEvent propagation on disabled form elements + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Span
+ + Text +
+ + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled.tentative.html b/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled.tentative.html new file mode 100644 index 0000000000..e3dcd43a17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/event-propagate-disabled.tentative.html @@ -0,0 +1,264 @@ + + + +Event propagation on disabled form elements + + + + + + + + + +
+ + + +
Text
+
Span
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Text +
+ + diff --git a/testing/web-platform/tests/html/semantics/disabled-elements/fieldset-event-propagation.tentative.html b/testing/web-platform/tests/html/semantics/disabled-elements/fieldset-event-propagation.tentative.html new file mode 100644 index 0000000000..6d1a39c1de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/disabled-elements/fieldset-event-propagation.tentative.html @@ -0,0 +1,55 @@ + + + + + + + + + + +
+
+
hello world
+
+
+ +
+
hello world
+
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/conditionally-block-rendering-on-link-media-attr.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/conditionally-block-rendering-on-link-media-attr.html new file mode 100644 index 0000000000..d21df46d30 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/conditionally-block-rendering-on-link-media-attr.html @@ -0,0 +1,27 @@ + + + + + + + + +

Dominic Farolino

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-link-stylesheet-does-not-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-link-stylesheet-does-not-block-script.html new file mode 100644 index 0000000000..bcc98050ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-link-stylesheet-does-not-block-script.html @@ -0,0 +1,21 @@ + +Script-created render-blocking link stylesheet is not script-blocking + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-style-element-does-not-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-style-element-does-not-block-script.html new file mode 100644 index 0000000000..9a8c4b466b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/dynamic-render-blocking-style-element-does-not-block-script.html @@ -0,0 +1,21 @@ + +Script-created render-blocking style element is not script-blocking + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/link-stylesheet-with-non-match-media-does-not-block-render.tentative.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/link-stylesheet-with-non-match-media-does-not-block-render.tentative.html new file mode 100644 index 0000000000..7a881bcc3d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/link-stylesheet-with-non-match-media-does-not-block-render.tentative.html @@ -0,0 +1,21 @@ + + + Delayed Stylesheet imported using link tag should not block rendering + or JS execution when media doesn't match. + + + + + +

+ This text is black in color till stylesheet is fetched. +

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-link-stylesheet-does-not-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-link-stylesheet-does-not-block-script.html new file mode 100644 index 0000000000..2c27bd32f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-link-stylesheet-does-not-block-script.html @@ -0,0 +1,20 @@ + +Script-created link stylesheet is not script-blocking + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-style-element-does-not-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-style-element-does-not-block-script.html new file mode 100644 index 0000000000..f04c3f668f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/script-created-style-element-does-not-block-script.html @@ -0,0 +1,20 @@ + +Script-created style element is not script-blocking + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-match-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-match-block-script.html new file mode 100644 index 0000000000..17adfc1728 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-match-block-script.html @@ -0,0 +1,17 @@ + +Style element is script-blocking when media matches + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-not-match-does-not-block-script.html b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-not-match-does-not-block-script.html new file mode 100644 index 0000000000..c05b6ed945 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/style-element-media-not-match-does-not-block-script.html @@ -0,0 +1,17 @@ + +Style element is not script-blocking when media doesn't match + + + + +

Some text

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/stylesheet.py b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/stylesheet.py new file mode 100644 index 0000000000..d5ae5b9cca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/stylesheet.py @@ -0,0 +1,10 @@ +from time import sleep +def main(request, response): + if b"delay" in request.GET: + delay = int(request.GET[b"delay"]) + sleep(delay) + + if b"stylesNotMatchingEnvironment" in request.GET: + return u'h1 {color: brown;}' + else: + return u'h1 {color: purple;}' diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/link-style.css b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/link-style.css new file mode 100644 index 0000000000..1024df8792 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/link-style.css @@ -0,0 +1,3 @@ +h1 { + color: purple; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/utils.js b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/utils.js new file mode 100644 index 0000000000..02d3a095cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/interactions-of-styling-and-scripting/support/utils.js @@ -0,0 +1,20 @@ +function styleExistsInSheet(styleText, sheet) { + for (let rule of sheet.cssRules) { + if (styleText == rule.cssText) + return true; + if (rule instanceof CSSImportRule) { + if (rule.styleSheet && styleExistsInSheet(styleText, rule.styleSheet)) + return true; + } + } + return false; +} + +function styleExists(styleText) { + for (let sheet of document.styleSheets) { + if (styleExistsInSheet(styleText, sheet)) + return true; + } + return false; +} + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/LinkStyle.html b/testing/web-platform/tests/html/semantics/document-metadata/styling/LinkStyle.html new file mode 100644 index 0000000000..d1bb433520 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/LinkStyle.html @@ -0,0 +1,88 @@ + + + + + HTML Test: Styling + + + + + + + + + + + + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/support/alternate.css b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/alternate.css new file mode 100644 index 0000000000..b8deb07b0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/alternate.css @@ -0,0 +1,7 @@ +#test { + color: yellow; + background-color: blue; + width: 100px; + height: 50px; + font-size: .5em; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/support/emptytitle.css b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/emptytitle.css new file mode 100644 index 0000000000..e62fe701b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/emptytitle.css @@ -0,0 +1,4 @@ +#test { + width: 100px; + height: 100px; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/support/normal.css b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/normal.css new file mode 100644 index 0000000000..a803c22112 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/normal.css @@ -0,0 +1,5 @@ +#test { + width: 100px; + height: 50px; + font-size: 10px; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/support/notitle.css b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/notitle.css new file mode 100644 index 0000000000..e62fe701b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/notitle.css @@ -0,0 +1,4 @@ +#test { + width: 100px; + height: 100px; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/styling/support/unmatch.css b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/unmatch.css new file mode 100644 index 0000000000..e62fe701b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/styling/support/unmatch.css @@ -0,0 +1,4 @@ +#test { + width: 100px; + height: 100px; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-data.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-data.html new file mode 100644 index 0000000000..4905dd84ca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-data.html @@ -0,0 +1,32 @@ + + + +<base> and data: URLs + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-javascript.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-javascript.html new file mode 100644 index 0000000000..65d9c84fcf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base-javascript.html @@ -0,0 +1,32 @@ + + + +<base> and javascript: URLs + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html new file mode 100644 index 0000000000..54c4794549 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html @@ -0,0 +1,19 @@ + + +base element in about:blank document should resolve against its fallback base URI + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html new file mode 100644 index 0000000000..7737556a1a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html @@ -0,0 +1,29 @@ + + +HTML Test: base_href_empty + + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html new file mode 100644 index 0000000000..6d12d29e8a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html @@ -0,0 +1,12 @@ + + +base element with unparseable href should have .href getter return attr value + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.html new file mode 100644 index 0000000000..83e71387a0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.html @@ -0,0 +1,33 @@ + + +HTML Test: base_href_specified + + + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html new file mode 100644 index 0000000000..cf883f7239 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html @@ -0,0 +1,30 @@ + + +HTML Test: base_href_unspecified + + + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html new file mode 100644 index 0000000000..4b7c0d213c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html @@ -0,0 +1,29 @@ + + +HTML Test: base_multiple + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html new file mode 100644 index 0000000000..eea1efe51d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html @@ -0,0 +1,19 @@ + + +base element in srcdoc document should resolve against its fallback base URI + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_iframe_src_navigation.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_iframe_src_navigation.html new file mode 100644 index 0000000000..b432698f21 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_iframe_src_navigation.html @@ -0,0 +1,10 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_location_assignment.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_location_assignment.html new file mode 100644 index 0000000000..2914f1f77f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_target_does_not_affect_location_assignment.html @@ -0,0 +1,10 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html new file mode 100644 index 0000000000..49dc772f91 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html @@ -0,0 +1,7 @@ + + +Example + + + +click me diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html new file mode 100644 index 0000000000..0e57cb9c5c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html @@ -0,0 +1,5 @@ + + +Example + +
PASS
diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all new file mode 100644 index 0000000000..60f1eab971 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all @@ -0,0 +1,3 @@ +body { + color: red; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all.headers b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all.headers new file mode 100644 index 0000000000..74e07a14e7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/all.headers @@ -0,0 +1 @@ +Content-Type: text/css diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/document-without-browsing-context.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/document-without-browsing-context.html new file mode 100644 index 0000000000..127b253f59 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/document-without-browsing-context.html @@ -0,0 +1,35 @@ + + +Documents without browsing contexts should not load stylesheets + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html new file mode 100644 index 0000000000..188e4ba5ab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html @@ -0,0 +1,25 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.html new file mode 100644 index 0000000000..e4f617d458 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.html @@ -0,0 +1,6 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.https.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.https.html new file mode 100644 index 0000000000..e4f617d458 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-error-events.https.html @@ -0,0 +1,6 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html new file mode 100644 index 0000000000..e95fff7988 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html @@ -0,0 +1,17 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html new file mode 100644 index 0000000000..a809cc44b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html @@ -0,0 +1,24 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events.html new file mode 100644 index 0000000000..9d112e88d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events.html @@ -0,0 +1,21 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events.html new file mode 100644 index 0000000000..b5550bb382 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events.html @@ -0,0 +1,21 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive-notref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive-notref.html new file mode 100644 index 0000000000..04e3a7cb02 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive-notref.html @@ -0,0 +1,5 @@ + + +link element rel is ASCII case-insensitive (mismatch reference) + +

Test passes if background is not red.

diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive.html new file mode 100644 index 0000000000..5ee55f7d2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute-ascii-case-insensitive.html @@ -0,0 +1,22 @@ + + +link element rel is ASCII case-insensitive + + + + + + + + + + + + + + + +

Test passes if background is not red.

diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute.html new file mode 100644 index 0000000000..14d06227ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rel-attribute.html @@ -0,0 +1,44 @@ + + + + + +
I"m green when light DOM link is on
+ +
+ I"m green when Shadow DOM link is on + +
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rellist.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rellist.html new file mode 100644 index 0000000000..8647426755 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-rellist.html @@ -0,0 +1,25 @@ + +link.relList: non-string contains + + + + + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html new file mode 100644 index 0000000000..575324d761 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html @@ -0,0 +1,37 @@ + +link: error events + + + + + +
+
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-limited-quirks.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-limited-quirks.html new file mode 100644 index 0000000000..d3c520ba75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-limited-quirks.html @@ -0,0 +1,7 @@ + +link: error events in limited quirks mode + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-quirks.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-quirks.html new file mode 100644 index 0000000000..ae2efa415e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-style-error-quirks.html @@ -0,0 +1,7 @@ + +link: error events in quirks mode + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute-ref.html new file mode 100644 index 0000000000..f32472105d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute-ref.html @@ -0,0 +1,3 @@ + +

You should see a green rectangle below

+
diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute.html new file mode 100644 index 0000000000..80acb9f3dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-type-attribute.html @@ -0,0 +1,9 @@ + + + + + + + +

You should see a green rectangle below

+
diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/bad.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/bad.css new file mode 100644 index 0000000000..4e1fe36165 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/bad.css @@ -0,0 +1,4 @@ +p { + background-color: red; + color: black; +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/css.py b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/css.py new file mode 100644 index 0000000000..1a11c1d5b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/css.py @@ -0,0 +1,7 @@ +def main(request, response): + response.add_required_headers = False + if b"content_type" in request.GET: + response.writer.write_header(b"Content-Type", request.GET.first(b"content_type")) + if b"nosniff" in request.GET: + response.writer.write_header(b"x-content-type-options", b"nosniff") + response.writer.write_content(u"body { background:red }") diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/empty-href.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/empty-href.css new file mode 100644 index 0000000000..60f1eab971 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/empty-href.css @@ -0,0 +1,3 @@ +body { + color: red; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/good.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/good.css new file mode 100644 index 0000000000..1da5e2b8cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/good.css @@ -0,0 +1,3 @@ +p { + color: green; +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-load-error-events.sub.js b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-load-error-events.sub.js new file mode 100644 index 0000000000..33c8709579 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-load-error-events.sub.js @@ -0,0 +1,192 @@ +/** + * This is the guts of the load/error event tests for . + * + * We have a list of tests each of which is an object containing: href value, + * expected load success boolean, test description. Href values are set up in + * such a way that we guarantee that all stylesheet URLs are unique. This + * avoids issues around caching of sheets based on URL. + */ + +// Our URLs are random, so we don't use them in error messages by +// default, but enable doing it if someone wants to debug things. +const DEBUG_URLS = false; + +var isHttps = location.protocol == "https:"; + +var tests = [ + // Basic tests + { + href: existingSheet(), + success: true, + description: "Basic load of stylesheet", + }, + { + href: nonexistentSheet(), + success: false, + description: "Attempted load of nonexistent stylesheet", + }, + { + href: `data:text/css,@import url("${existingSheet()}")`, + success: true, + description: "Import of stylesheet", + }, + { + href: `data:text/css,@import url("${nonexistentSheet()}")`, + success: false, + description: "Import of nonexistent stylesheet", + }, + { + href: `data:text/css,@import url("data:text/css,@import url('${existingSheet()}')")`, + success: true, + description: "Import of import of stylesheet", + }, + { + href: `data:text/css,@import url("data:text/css,@import url('${nonexistentSheet()}')")`, + success: false, + description: "Import of import of nonexistent stylesheet", + }, + + // Non-CSS-response tests. + { + href: makeUnique(""), + success: false, + description: "Load of non-CSS stylesheet", + }, + { + href: `data:text/css,@import url("${makeUnique("")}")`, + success: false, + description: "Import of non-CSS stylesheet", + }, + { + href: `data:text/css,@import url("data:text/css,@import url('${makeUnique("")}')")`, + success: false, + description: "Import of import of non-CSS stylesheet", + }, + + // http:// tests, to test what happens with mixed content blocking. + { + href: httpSheet(), + success: !isHttps, + description: "Load of http:// stylesheet", + }, + { + href: `data:text/css,@import url("${httpSheet()}")`, + success: !isHttps, + description: "Import of http:// stylesheet", + }, + { + href: `data:text/css,@import url("data:text/css,@import url('${httpSheet()}')")`, + success: !isHttps, + description: "Import of import of http:// stylesheet", + }, + + // https:// tests just as a control + { + href: httpsSheet(), + success: true, + description: "Load of https:// stylesheet", + }, + { + href: `data:text/css,@import url("${httpsSheet()}")`, + success: true, + description: "Import of https:// stylesheet", + }, + { + href: `data:text/css,@import url("data:text/css,@import url('${httpsSheet()}')")`, + success: true, + description: "Import of import of https:// stylesheet", + }, + + // Tests with multiple imports some of which are slow and some are fast. + { + href: `data:text/css,@import url("${slowResponse(existingSheet())}"); @import url("${nonexistentSheet()}");`, + success: false, + description: "Slow successful import, fast failing import", + }, + { + href: `data:text/css,@import url("${existingSheet()}"); @import url("${slowResponse(nonexistentSheet())}");`, + success: false, + description: "Fast successful import, slow failing import", + } +]; + +// Note: Here we really do need to use "let" at least for the href, +// because we lazily evaluate it in the unreached cases. +for (var test of tests) { + let {href, success, description} = test; + var t = async_test(description); + var link = document.createElement("link"); + link.rel = "stylesheet"; + hrefString = DEBUG_URLS ? `: ${href}` : ""; + if (success) { + link.onload = t.step_func_done(() => {}); + link.onerror = t.step_func_done(() => assert_unreached(`error fired when load expected${hrefString}`) ); + } else { + link.onerror = t.step_func_done(() => {}); + link.onload = t.step_func_done(() => assert_unreached(`load fired when error expected${hrefString}`) ); + } + link.href = href; + document.head.appendChild(link); +} + +/* Utility function */ +function makeUnique(url) { + // Make sure we copy here, even if the thing coming in is a URL, so we don't + // mutate our caller's data. + url = new URL(url, location.href); + // We want to generate a unique URI to avoid the various caches browsers have + // for stylesheets. We don't want to just use a counter, because that would + // not be robust to the test being reloaded or othewise run multiple times + // without a browser restart. We don't want to use timstamps, because those + // are not likely to be unique across calls to this function, especially given + // the degraded timer resolution browsers have due to Spectre. + // + // So just fall back on Math.random() and assume it can't duplicate values. + url.searchParams.append("r", Math.random()); + return url; +} + +function existingSheet() { + return makeUnique("resources/good.css"); +} + +/** + * Function the add values to the "pipe" search param. See + * http://wptserve.readthedocs.io/en/latest/pipes.html for why one would do + * this. Because this param uses a weird '|'-separated syntax instead of just + * using multiple params with the same name, we need some manual code to munge + * the value properly. + */ +function addPipe(url, pipeVal) { + url = new URL(url, location.href); + var params = url.searchParams; + var oldVal = params.get("pipe"); + if (oldVal) { + params.set("pipe", oldVal + "|" + pipeVal); + } else { + params.set("pipe", pipeVal); + } + return url; +} + +function nonexistentSheet() { + return addPipe(existingSheet(), "status(404)"); +} + +function httpSheet() { + var url = existingSheet(); + url.protocol = "http"; + url.port = {{ports[http][0]}}; + return url; +} + +function httpsSheet() { + var url = existingSheet(); + url.protocol = "https"; + url.port = {{ports[https][0]}}; + return url; +} + +function slowResponse(url) { + return addPipe(url, "trickle(d1)"); +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-rel-attribute.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-rel-attribute.css new file mode 100644 index 0000000000..fa95e11ba9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-rel-attribute.css @@ -0,0 +1,3 @@ +.green { + color: green; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js new file mode 100644 index 0000000000..d1fa5ac2d6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js @@ -0,0 +1,47 @@ +["", "@import"].forEach(linkType => { + [ + ["same-origin", "resources/css.py"], + ["cross-origin", get_host_info().HTTP_REMOTE_ORIGIN + "/html/semantics/document-metadata/the-link-element/resources/css.py"] + ].forEach(originType => { + ["no Content-Type", "wrong Content-Type", "broken Content-Type"].forEach(contentType => { + ["no nosniff", "nosniff"].forEach(nosniff => { + async_test(t => { + const l = document.createElement("link"); + t.add_cleanup(() => l.remove()); + if (nosniff === "nosniff" || contentType === "wrong Content-Type" && (document.compatMode === "CSS1Compat" || originType[0] === "cross-origin")) { + l.onerror = t.step_func_done(); + l.onload = t.unreached_func("error event should have fired"); + } else { + l.onload = t.step_func_done(); + l.onerror = t.unreached_func("load event should have fired"); + } + l.rel = "stylesheet"; + let query = []; + if (contentType === "broken Content-Type") { + query.push("content_type=oops"); + } else if (contentType === "wrong Content-Type") { + query.push("content_type=text/plain") + } + if (nosniff === "nosniff") { + query.push("nosniff"); + } + let stringQuery = ""; + query.forEach(val => { + if (stringQuery === "") { + stringQuery += "?" + val; + } else { + stringQuery += "&" + val; + } + }); + const link = new URL(originType[1] + stringQuery, location).href; + if (linkType === "") { + l.href = link; + } else { + l.href = "data:text/css,@import url(" + link + ");"; + } + document.head.appendChild(l); + }, "Stylesheet loading using " + linkType + " with " + contentType + ", " + originType[0] + ", and " + nosniff); + }); + }); + }); +}); diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css new file mode 100644 index 0000000000..796c55c42f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css @@ -0,0 +1,3 @@ +body { + background-color: gray; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/stylesheet.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/stylesheet.css new file mode 100644 index 0000000000..e1b2552ffe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/stylesheet.css @@ -0,0 +1,3 @@ +body { + background-color: green; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/style.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/style.css new file mode 100644 index 0000000000..d48115e565 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/style.css @@ -0,0 +1,3 @@ +body { + background-color: white; +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href-ref.html new file mode 100644 index 0000000000..9ae6e36655 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href-ref.html @@ -0,0 +1,8 @@ + + + +

This text should be green on a white background diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href.html new file mode 100644 index 0000000000..6a3f18de98 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-change-href.html @@ -0,0 +1,13 @@ + + +Obtaining a new stylesheet removes styles from the previous stylesheet. + + + +

This text should be green on a white background diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href-ref.html new file mode 100644 index 0000000000..63b75d0ae2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href-ref.html @@ -0,0 +1,9 @@ + + +Test + +

This text should be green. diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href.html new file mode 100644 index 0000000000..16b14efacc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-empty-href.html @@ -0,0 +1,12 @@ + + +Test + + + + +

This text should be green. diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media-ref.html new file mode 100644 index 0000000000..63b75d0ae2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media-ref.html @@ -0,0 +1,9 @@ + + +Test + +

This text should be green. diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media.html new file mode 100644 index 0000000000..9a72924cf4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-media.html @@ -0,0 +1,17 @@ + + +Test + + + + +

This text should be green. diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html new file mode 100644 index 0000000000..ab8ee727f2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html @@ -0,0 +1,22 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base-ref.html new file mode 100644 index 0000000000..83f0d06772 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base-ref.html @@ -0,0 +1,11 @@ + + + + Stylesheet Without Base Tag + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base.html new file mode 100644 index 0000000000..a9f2a8bce0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-with-base.html @@ -0,0 +1,11 @@ + + + + Stylesheet With Base Tag + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.css new file mode 100644 index 0000000000..e8f24f94a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.css @@ -0,0 +1,3 @@ +body { + background-color: red; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.py b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.py new file mode 100644 index 0000000000..1a4dec2724 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet.py @@ -0,0 +1,9 @@ +def main(request, response): + try: + count = int(request.server.stash.take(request.GET[b"id"])) + except: + count = 0 + if b"count" in request.GET: + return str(count) + request.server.stash.put(request.GET[b"id"], str(count + 1)) + return u'body { color: red }' diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-attribute-changes.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-attribute-changes.html new file mode 100644 index 0000000000..6f877ee416 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-attribute-changes.html @@ -0,0 +1,35 @@ + +Meta color-scheme - attribute changes + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-empty-content-value.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-empty-content-value.html new file mode 100644 index 0000000000..8a3cf18af8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-empty-content-value.html @@ -0,0 +1,14 @@ + +Meta color-scheme - empty content value + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-first-valid-applies.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-first-valid-applies.html new file mode 100644 index 0000000000..095d0f360d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-first-valid-applies.html @@ -0,0 +1,16 @@ + +Multiple color-scheme meta tags - first valid applies + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-insert.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-insert.html new file mode 100644 index 0000000000..463c318105 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-insert.html @@ -0,0 +1,26 @@ + +Insert color-scheme meta tags + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-no-content-value.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-no-content-value.html new file mode 100644 index 0000000000..0d22e44b26 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-no-content-value.html @@ -0,0 +1,14 @@ + +Meta color-scheme - no content value + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-normal-descendant-change.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-normal-descendant-change.html new file mode 100644 index 0000000000..136f4c371b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-normal-descendant-change.html @@ -0,0 +1,20 @@ + +Change color-scheme meta tag affecting normal descendant + + + + +

+
+
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove-head.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove-head.html new file mode 100644 index 0000000000..587e2fa596 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove-head.html @@ -0,0 +1,17 @@ + +Remove head with meta color-scheme + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove.html new file mode 100644 index 0000000000..a89a520791 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-remove.html @@ -0,0 +1,19 @@ + +Remove color-scheme meta tag + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-body.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-body.html new file mode 100644 index 0000000000..19f8d53994 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-body.html @@ -0,0 +1,12 @@ + +Meta color-scheme in body should apply + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-head.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-head.html new file mode 100644 index 0000000000..b9fd2c4384 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-head.html @@ -0,0 +1,10 @@ + +Single meta color-scheme in head + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-shadow-tree.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-shadow-tree.html new file mode 100644 index 0000000000..7ccafc8419 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/meta-color-scheme-single-value-in-shadow-tree.html @@ -0,0 +1,22 @@ + +Meta color-scheme in shadow-tree should not apply + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/support/compute-root-color-scheme.js b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/support/compute-root-color-scheme.js new file mode 100644 index 0000000000..74cbf895ce --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/color-scheme/support/compute-root-color-scheme.js @@ -0,0 +1,28 @@ +'use strict'; + +function assert_root_color_scheme(expected_used_scheme, description) { + function get_used_root_color_scheme() { + let light = get_system_color("only light", "CanvasText"); + let dark = get_system_color("only dark", "CanvasText"); + assert_not_equals(light, dark, "CanvasText system color should be different with light and dark color schemes"); + let root = getComputedStyle(document.documentElement).color; + assert_in_array(root, [light, dark], "Root color scheme should be either light or dark, or the text needs to be extended for newer color-schemes"); + return root == light ? "light" : "dark"; + } + + function get_system_color(scheme, color) { + let div = document.createElement("div"); + div.style.color = color; + div.style.colorScheme = scheme; + + document.documentElement.appendChild(div); + let computed = getComputedStyle(div).color; + div.remove(); + return computed; + } + + test(() => { + assert_equals(get_used_root_color_scheme(), expected_used_scheme); + assert_equals(getComputedStyle(document.documentElement).colorScheme, "normal", "Root element's color-scheme should be 'normal'"); + }, description); +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-1.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-1.html new file mode 100644 index 0000000000..ac82e3396d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-1.html @@ -0,0 +1,23 @@ + +Setting both http-equiv and name attributes on a meta element + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-2.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-2.html new file mode 100644 index 0000000000..b73013a341 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/http-equiv-and-name-2.html @@ -0,0 +1,13 @@ + +Setting both http-equiv and name attributes on a meta element + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-1.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-1.html new file mode 100644 index 0000000000..196f6d0409 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-1.html @@ -0,0 +1,57 @@ + + +Meta refresh is blocked by the allow-scripts sandbox flag at its creation time, not when refresh comes due + + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-2.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-2.html new file mode 100644 index 0000000000..cc7eb5e5e0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-2.html @@ -0,0 +1,55 @@ + + +Meta refresh of the original iframe is not blocked if moved into a sandboxed iframe + + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/dynamic-append.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/dynamic-append.html new file mode 100644 index 0000000000..4d2fa78940 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/dynamic-append.html @@ -0,0 +1,31 @@ + + +Meta refresh applies even when dynamically appended + + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree.html new file mode 100644 index 0000000000..2a9f301fff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree.html @@ -0,0 +1,38 @@ + + +Meta refresh only applies while in the document tree, not in a shadow tree + + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html new file mode 100644 index 0000000000..73ac4bcc00 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + +Parsing of meta refresh + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document.html new file mode 100644 index 0000000000..1e608a3456 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document.html @@ -0,0 +1,37 @@ + + +A meta must refresh the original document even if it was removed. + + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/;url=foo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/;url=foo new file mode 100644 index 0000000000..622ff110d3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/;url=foo @@ -0,0 +1 @@ +;url=foo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/__dir__.headers b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/__dir__.headers new file mode 100644 index 0000000000..156209f9c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/__dir__.headers @@ -0,0 +1 @@ +Content-Type: text/html diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo new file mode 100644 index 0000000000..257cc5642c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo @@ -0,0 +1 @@ +foo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo'bar b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo'bar new file mode 100644 index 0000000000..80e7410879 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/foo'bar @@ -0,0 +1 @@ +foo'bar diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.py b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.py new file mode 100644 index 0000000000..797c7b9412 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.py @@ -0,0 +1,4 @@ +def main(request, response): + response.headers.set(b"Content-Type", b"text/html") + response.headers.set(b"Refresh", request.GET.first(b"input")) + response.content = u"refresh.py\n" diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.sub.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.sub.html new file mode 100644 index 0000000000..bc97f29c62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.sub.html @@ -0,0 +1 @@ +refresh.sub.html diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/ufoo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/ufoo new file mode 100644 index 0000000000..8fff3cf4fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/ufoo @@ -0,0 +1 @@ +ufoo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urfoo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urfoo new file mode 100644 index 0000000000..7d7373f4b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urfoo @@ -0,0 +1 @@ +urfoo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/url foo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/url foo new file mode 100644 index 0000000000..a1e6a92290 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/url foo @@ -0,0 +1 @@ +url foo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urlfoo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urlfoo new file mode 100644 index 0000000000..3e67b2f7ca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/urlfoo @@ -0,0 +1 @@ +urlfoo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/x;url=foo b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/x;url=foo new file mode 100644 index 0000000000..f10371aa7b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/x;url=foo @@ -0,0 +1 @@ +x;url=foo diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-lower.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-lower.html new file mode 100644 index 0000000000..026e61c2ca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-lower.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-message.js b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-message.js new file mode 100644 index 0000000000..1dc218a0a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-message.js @@ -0,0 +1 @@ +parent.postMessage(null, "*"); diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-mixed.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-mixed.html new file mode 100644 index 0000000000..b4c547d342 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-mixed.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-other.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-other.html new file mode 100644 index 0000000000..5c89a5e8bc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive-other.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive.html new file mode 100644 index 0000000000..6d19be4149 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/pragma-directives/http-equiv-enumerated-ascii-case-insensitive.html @@ -0,0 +1,32 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html new file mode 100644 index 0000000000..af872d6e3a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html @@ -0,0 +1,51 @@ + + + + + +Multiple languages in Content-Language meta element + + + + + + + + + + + +
 
+

This test failed because it relies on :lang for results, but :lang is not supported by this browser.

+ + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/historical.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/historical.html new file mode 100644 index 0000000000..d475f5b3c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/historical.html @@ -0,0 +1,14 @@ + +Historical style element features should not be supported + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment-ref.html new file mode 100644 index 0000000000..999383c769 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment-ref.html @@ -0,0 +1,18 @@ + + +[style] Reference file + + + +

+ This page tests that Style written inside HTML comment is not applied +

+ This test passes if the text below is Green. NOT Red. +

+ This is some text. +

+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment.xhtml b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment.xhtml new file mode 100644 index 0000000000..839548f01c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/html_style_in_comment.xhtml @@ -0,0 +1,18 @@ + + + + + + +

This page tests that Style written inside HTML comment is not applied

+This test passes if the text below is Green. NOT Red. +

+This is some text. +

+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/mutations.window.js b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/mutations.window.js new file mode 100644 index 0000000000..1c93b40394 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/mutations.window.js @@ -0,0 +1,48 @@ +test(t => { + const style = document.body.appendChild(document.createElement("style")); + const sheet = style.sheet; + t.add_cleanup(() => style.remove()); + assert_not_equals(sheet, null); + style.appendChild(new Comment()); + assert_not_equals(sheet, style.sheet); +}, "Mutating the style element: inserting a Comment node"); + +test(t => { + const style = document.body.appendChild(document.createElement("style")); + t.add_cleanup(() => style.remove()); + const comment = style.appendChild(new Comment()); + const sheet = style.sheet; + comment.appendData("x"); + assert_not_equals(sheet, style.sheet); +}, "Mutating the style element: mutating a Comment node"); + +test(t => { + const style = document.body.appendChild(document.createElement("style")); + t.add_cleanup(() => style.remove()); + const text1 = style.appendChild(new Text("1")); + const text2 = style.appendChild(new Text("2")); + assert_equals(style.textContent, "12"); + assert_equals(style.childNodes.length, 2); + const sheet = style.sheet; + style.normalize(); + assert_equals(style.childNodes.length, 1); + assert_not_equals(sheet, style.sheet); +}, "Mutating the style element: using normalize()"); + +test(t => { + const style = document.body.appendChild(document.createElement("style")); + t.add_cleanup(() => style.remove()); + const comment = style.appendChild(new Comment()); + const sheet = style.sheet; + comment.remove(); + assert_not_equals(sheet, style.sheet); +}, "Mutating the style element: removing a Comment node"); + +test(t => { + const style = document.body.appendChild(document.createElement("style")); + const sheet = style.sheet; + t.add_cleanup(() => style.remove()); + assert_not_equals(sheet, null); + style.appendChild(new DocumentFragment()); + assert_equals(sheet, style.sheet); +}, "Mutating the style element: inserting an empty DocumentFragment node"); diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-error-01.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-error-01.html new file mode 100644 index 0000000000..0bdef0e175 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-error-01.html @@ -0,0 +1,32 @@ + +style: error events + + + + +
+
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-load-after-mutate.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-load-after-mutate.html new file mode 100644 index 0000000000..901c5c1ac2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style-load-after-mutate.html @@ -0,0 +1,16 @@ + +The 'load' event on the style element should still fire after mutation + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_disabled.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_disabled.html new file mode 100644 index 0000000000..1a88bf1305 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_disabled.html @@ -0,0 +1,39 @@ + + + + + HTML Test: The style should not be applied if it is disabled + + + + + + + + +
+
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_events.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_events.html new file mode 100644 index 0000000000..5e07e50882 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_events.html @@ -0,0 +1,36 @@ + + + + + HTML Test: The style events + + + + + + + + + +
+
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_async.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_async.html new file mode 100644 index 0000000000..ef8ac89c46 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_async.html @@ -0,0 +1,25 @@ + + + +Style load event should be async + + + + + + + +
+
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_event.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_event.html new file mode 100644 index 0000000000..d852661791 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_load_event.html @@ -0,0 +1,28 @@ + +HTML Test: The style load event should fire when textContent is changed + + + + + + + + +
Box
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media.html new file mode 100644 index 0000000000..04bcbc53ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media.html @@ -0,0 +1,40 @@ + + + + + HTML Test: The style information must be applied to the environment specified by the media attribute + + + + + + + + + +
+
+ + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media_change.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media_change.html new file mode 100644 index 0000000000..8b7e8440d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_media_change.html @@ -0,0 +1,43 @@ + + + + + Dynamically changing HTMLStyleElement.media should change the rendering accordingly + + + + + + + + + text + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_non_matching_media.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_non_matching_media.html new file mode 100644 index 0000000000..74d3554b13 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_non_matching_media.html @@ -0,0 +1,20 @@ + + + + + HTML Test: Non-matching media type should have stylesheet + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_change.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_change.html new file mode 100644 index 0000000000..a19b3c86d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_change.html @@ -0,0 +1,39 @@ + + + + + Dynamically changing HTMLStyleElement.type should change the rendering accordingly + + + + + + + Text content. + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_html.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_html.html new file mode 100644 index 0000000000..cc48868bd7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_html.html @@ -0,0 +1,71 @@ + + +<style> type="" edge cases + + + + + + + + + + + + + + + + + +
+
+
+
+
+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_svg.svg b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_svg.svg new file mode 100644 index 0000000000..6b0d1e874e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/style_type_svg.svg @@ -0,0 +1,75 @@ + + + <style> type="" edge cases + + + + + + + + + + + + + + + + + + + + + + + + + "use strict"; + + test(() => { + assertApplied("test1"); + }, "With no type attribute, the style should apply"); + + test(() => { + assertApplied("test2"); + }, "With an empty type attribute, the style should apply"); + + test(() => { + assertApplied("test3"); + }, "With a mixed-case type attribute, the style should apply"); + + test(() => { + assertNotApplied("test4"); + }, "With a whitespace-surrounded type attribute, the style should not apply"); + + test(() => { + assertNotApplied("test5"); + }, "With a charset parameter in the type attribute, the style should not apply"); + + function getColor(id) { + return window.getComputedStyle(document.getElementById(id)).color; + } + + function assertApplied(id) { + assert_equals(getColor(id), "rgb(0, 128, 0)"); + } + + function assertNotApplied(id) { + assert_not_equals(getColor(id), "rgb(0, 128, 0)"); + } + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/support/css-red.txt b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/support/css-red.txt new file mode 100644 index 0000000000..9ef04cbd12 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/support/css-red.txt @@ -0,0 +1 @@ +html { color: red; } diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive-ref.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive-ref.html new file mode 100644 index 0000000000..5ac2432547 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive-ref.html @@ -0,0 +1,9 @@ + + + +

text/css treated as CSS? +

TeXt/CsS treated as CSS? +

text/cſs ignored? diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive.html new file mode 100644 index 0000000000..3c5cd152d6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-style-element/update-style-block-ascii-case-insensitive.html @@ -0,0 +1,16 @@ + + + + + + + + + +

text/css treated as CSS? +

TeXt/CsS treated as CSS? +

text/cſs ignored? diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-01.html b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-01.html new file mode 100644 index 0000000000..7f25400ea8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-01.html @@ -0,0 +1,25 @@ + +title.text with comment and element children. + + + + +

+ + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-02.xhtml b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-02.xhtml new file mode 100644 index 0000000000..068b105046 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-02.xhtml @@ -0,0 +1,30 @@ + + +title.text with comment and element children. + + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-03.html b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-03.html new file mode 100644 index 0000000000..1c119a825c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-03.html @@ -0,0 +1,32 @@ + + title.text and space normalization + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-04.xhtml b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-04.xhtml new file mode 100644 index 0000000000..de382ab4d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-title-element/title.text-04.xhtml @@ -0,0 +1,37 @@ + + + title.text and space normalization + + + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/edits/the-del-element/del_effect.html b/testing/web-platform/tests/html/semantics/edits/the-del-element/del_effect.html new file mode 100644 index 0000000000..14297e5293 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/edits/the-del-element/del_effect.html @@ -0,0 +1,19 @@ + + +HTML Test: Text in the del element should be 'line-through' + + + + + +

crossed-off text

+
+ + diff --git a/testing/web-platform/tests/html/semantics/edits/the-ins-element/ins_effect.html b/testing/web-platform/tests/html/semantics/edits/the-ins-element/ins_effect.html new file mode 100644 index 0000000000..6e1b344596 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/edits/the-ins-element/ins_effect.html @@ -0,0 +1,19 @@ + + +HTML Test: Text in the ins element should be 'underline' + + + + + +

underlined text

+
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/META.yml b/testing/web-platform/tests/html/semantics/embedded-content/META.yml new file mode 100644 index 0000000000..c1dd8dddf9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/META.yml @@ -0,0 +1,2 @@ +suggested_reviewers: + - foolip diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-html.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-html.html new file mode 100644 index 0000000000..0808538337 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-html.html @@ -0,0 +1,10 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-img.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-img.html new file mode 100644 index 0000000000..7e9d713c0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-img.html @@ -0,0 +1,10 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-js.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-js.html new file mode 100644 index 0000000000..c3b027563d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-js.html @@ -0,0 +1,11 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-mp4.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-mp4.html new file mode 100644 index 0000000000..fde560e5be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-mp4.html @@ -0,0 +1,10 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-not-found.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-not-found.html new file mode 100644 index 0000000000..0b56b5eadc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-not-found.html @@ -0,0 +1,10 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-type-only.html b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-type-only.html new file mode 100644 index 0000000000..90c9d3311c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/embedded-type-only.html @@ -0,0 +1,10 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/bfcache/resources/common.js b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/resources/common.js new file mode 100644 index 0000000000..5bb9642a83 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/bfcache/resources/common.js @@ -0,0 +1,46 @@ +'use strict'; + +async function loadBfCacheTestHelperResources() { + await loadScript('/common/utils.js'); + await loadScript('/common/dispatcher/dispatcher.js'); + await loadScript( + '/html/browsers/browsing-the-web/back-forward-cache/resources/helper.sub.js'); +} +await loadBfCacheTestHelperResources(); + +// Runs BFCache tests for embed elements, specifically and . +// 1. Attaches the target element to first page. +// 2. Navigates away, then back via bfcache if this case is supported by the +// browser. +// @param {Object} testCase - The target element's attributes to test with. +export function runBfcacheTestForEmbeds(testCase) { + assert_implements(runBfcacheTest, '`runBfcacheTest()` is unavailable.'); + assert_implements(originSameOrigin, '`originSameOrigin` is unavailable.'); + + const tags = [ + {'name': 'embed', 'srcAttr': 'src'}, + {'name': 'object', 'srcAttr': 'data'}, + ]; + for (const tag of tags) { + runBfcacheTest( + { + targetOrigin: originSameOrigin, + shouldBeCached: true, + funcBeforeNavigation: (tag, attrs) => { + let e = document.createElement(tag.name); + // Only sets defined attributes to match the intended test behavior + // like embedded-type-only.html test. + if ('type' in attrs) { + e.type = attrs.type; + } + if ('src' in attrs) { + e[tag.srcAttr] = attrs.src; + } + document.body.append(e); + }, + argsBeforeNavigation: [tag, testCase] + }, + `Page with <${tag.name} ` + + `type=${testCase.type} ${tag.srcAttr}=${testCase.src}>`); + } +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference-test-data.html b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference-test-data.html new file mode 100644 index 0000000000..1fb71431f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference-test-data.html @@ -0,0 +1,254 @@ + + + + + + Test data for hash name reference + + + + +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + + + + +
+ +
+ + + + + + + + +
+ +
+ + + + + + + + +
+ +
+ + + + + + + + +
+ +
+ + + + + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ +
+ + + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html new file mode 100644 index 0000000000..b00f8fe2ae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html @@ -0,0 +1,45 @@ + + +parsing a hash-name reference for img and object + + + + +
+ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_controls_present-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_controls_present-manual.html new file mode 100644 index 0000000000..38faa4d00a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_controls_present-manual.html @@ -0,0 +1,14 @@ + + + + Audio Test: audio_controls_present.html + + + + + + +

Test passes if a controller user interface appears below and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_base.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_base.html new file mode 100644 index 0000000000..418e1b19c3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_base.html @@ -0,0 +1,42 @@ + + + + Audio Test: audio_loop_base + + + + + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html new file mode 100644 index 0000000000..01a2d4bea9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_loop_seek_to_eos.html @@ -0,0 +1,29 @@ + + + + Seeking to the end of looping audio + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_overriding_volume-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_overriding_volume-manual.html new file mode 100644 index 0000000000..cc1892ce89 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_overriding_volume-manual.html @@ -0,0 +1,21 @@ + + + + Audio Test: audio_muted_overriding_volume + + + + + + + +

Test passes if the audio is playing without sound output and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_present-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_present-manual.html new file mode 100644 index 0000000000..16d6f07eed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_muted_present-manual.html @@ -0,0 +1,20 @@ + + + + Audio Test: audio_muted_present + + + + + + + +

Test passes if the audio is playing without sound output and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_check.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_check.html new file mode 100644 index 0000000000..b467c702a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_check.html @@ -0,0 +1,58 @@ + + + + Audio Test: audio_volume_check + + + + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_loudest-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_loudest-manual.html new file mode 100644 index 0000000000..a623e8f5c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_loudest-manual.html @@ -0,0 +1,21 @@ + + + + Audio Test: audio_volume_loudest + + + + + + + +

Test passes if the audio is playing with sound heard and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_silent-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_silent-manual.html new file mode 100644 index 0000000000..257bd46289 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/audio_volume_silent-manual.html @@ -0,0 +1,21 @@ + + + + Audio Test: audio_volume_silent + + + + + + + +

Test passes if the audio is playing without sound heard and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html new file mode 100644 index 0000000000..6f11f8995b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html @@ -0,0 +1,35 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub.html new file mode 100644 index 0000000000..59b33d7c4d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub.html @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html new file mode 100644 index 0000000000..63479c0cb6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html @@ -0,0 +1,39 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html.headers b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html.headers new file mode 100644 index 0000000000..08461fadc2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html.headers @@ -0,0 +1 @@ +Feature-Policy: autoplay * diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub.html new file mode 100644 index 0000000000..763073e437 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub.html @@ -0,0 +1,39 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html new file mode 100644 index 0000000000..3dd3afbf77 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html @@ -0,0 +1,39 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html.headers b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html.headers new file mode 100644 index 0000000000..69ce436270 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html.headers @@ -0,0 +1 @@ +Feature-Policy: autoplay 'none' diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html new file mode 100644 index 0000000000..af4de6bf89 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that autoplay is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track.html new file mode 100644 index 0000000000..f687edf198 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track.html @@ -0,0 +1,34 @@ + + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/controlsList.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/controlsList.tentative.html new file mode 100644 index 0000000000..11144839ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/controlsList.tentative.html @@ -0,0 +1,32 @@ + +Test controlsList attribute + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/error-codes/error.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/error-codes/error.html new file mode 100644 index 0000000000..42d86e49b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/error-codes/error.html @@ -0,0 +1,40 @@ + +error + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay.html new file mode 100644 index 0000000000..e5c632bc17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - canplay + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html new file mode 100644 index 0000000000..b43f8d052a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - canplay + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html new file mode 100644 index 0000000000..b0895a97c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - canplaythrough + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html new file mode 100644 index 0000000000..195b464f01 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - canplaythrough + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata.html new file mode 100644 index 0000000000..f502c595e6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - loadeddata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html new file mode 100644 index 0000000000..08b2f2f86e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - loadeddata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html new file mode 100644 index 0000000000..5a0731e811 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - loadedmetadata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html new file mode 100644 index 0000000000..b460317f8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - loadedmetadata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart.html new file mode 100644 index 0000000000..192821a961 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart.html @@ -0,0 +1,38 @@ + + + + {audio,video} events - loadstart + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html new file mode 100644 index 0000000000..10af32afcb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html @@ -0,0 +1,36 @@ + + + + {audio,video} events - loadstart + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html new file mode 100644 index 0000000000..e1bae90ed0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html @@ -0,0 +1,50 @@ + + + + {audio,video} events - canplay, then canplaythrough + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html new file mode 100644 index 0000000000..3571e5151c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html @@ -0,0 +1,50 @@ + + + + {audio,video} events - canplay, then playing + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html new file mode 100644 index 0000000000..71aeca50c1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html @@ -0,0 +1,50 @@ + + + + {audio,video} events - loadedmetadata, then loadeddata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html new file mode 100644 index 0000000000..c6e1dbe07a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html @@ -0,0 +1,50 @@ + + + + {audio,video} events - loadstart, then progress + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause.html new file mode 100644 index 0000000000..841e124d5b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - pause + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html new file mode 100644 index 0000000000..c6d9d5920b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - pause + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play.html new file mode 100644 index 0000000000..f96c35113b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - play + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play_noautoplay.html new file mode 100644 index 0000000000..0dff37c800 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_play_noautoplay.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - play + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing.html new file mode 100644 index 0000000000..18204c457a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - playing + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html new file mode 100644 index 0000000000..e9714d7ec5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - playing + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress.html new file mode 100644 index 0000000000..ae4496c99f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress.html @@ -0,0 +1,40 @@ + + + + {audio,video} events - progress + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html new file mode 100644 index 0000000000..8b32448b9f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - progress + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate.html new file mode 100644 index 0000000000..0909c864e3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate.html @@ -0,0 +1,34 @@ + + + + {audio,video} events - timeupdate + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html new file mode 100644 index 0000000000..2738a3b4ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - timeupdate + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_volumechange.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_volumechange.html new file mode 100644 index 0000000000..3481947e87 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/event_volumechange.html @@ -0,0 +1,72 @@ + +volumechange event + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/historical.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/historical.html new file mode 100644 index 0000000000..d7395632eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/historical.html @@ -0,0 +1,56 @@ + +Historical media element features should not be supported + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html new file mode 100644 index 0000000000..0e1a48f78a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html @@ -0,0 +1,116 @@ + +HTMLMediaElement.addTextTrack + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin.html new file mode 100644 index 0000000000..e29f2b0fbc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin.html @@ -0,0 +1,60 @@ + +HTMLMediaElement.crossOrigin + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html new file mode 100644 index 0000000000..0f183b7e15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html @@ -0,0 +1,13 @@ + +HTMLMediaElement.textTracks + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html new file mode 100644 index 0000000000..05fd0f7f7d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html @@ -0,0 +1,55 @@ + +HTMLTrackElement.default + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html new file mode 100644 index 0000000000..78c3bff51a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html @@ -0,0 +1,146 @@ + +HTMLTrackElement.kind + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html new file mode 100644 index 0000000000..b2360315cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html @@ -0,0 +1,83 @@ + +HTMLTrackElement.label + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html new file mode 100644 index 0000000000..cde21e694e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html @@ -0,0 +1,18 @@ + +HTMLTrackElement.readyState + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html new file mode 100644 index 0000000000..4089913cbd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html @@ -0,0 +1,43 @@ + +HTMLTrackElement.src + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html new file mode 100644 index 0000000000..b5071e0c36 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html @@ -0,0 +1,82 @@ + +HTMLTrackElement.srclang + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html new file mode 100644 index 0000000000..1de0a88046 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html @@ -0,0 +1,12 @@ + +HTMLTrackElement.track + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html new file mode 100644 index 0000000000..7a57826f30 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html @@ -0,0 +1,101 @@ + +TextTrack.activeCues + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html new file mode 100644 index 0000000000..622ec4abfd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html @@ -0,0 +1,68 @@ + +TextTrack.addCue() + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html new file mode 100644 index 0000000000..3c8046cdc4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html @@ -0,0 +1,23 @@ + +TextTrack constants + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html new file mode 100644 index 0000000000..4b7808c963 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html @@ -0,0 +1,100 @@ + +TextTrack.cues + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html new file mode 100644 index 0000000000..d5dbc8342c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html @@ -0,0 +1,31 @@ + +TextTrack.kind + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html new file mode 100644 index 0000000000..c60e85c21a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html @@ -0,0 +1,29 @@ + +TextTrack.label + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html new file mode 100644 index 0000000000..eda3653de0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html @@ -0,0 +1,29 @@ + +TextTrack.language + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html new file mode 100644 index 0000000000..9f94156706 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html @@ -0,0 +1,55 @@ + +TextTrack.mode + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html new file mode 100644 index 0000000000..16c76f9484 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html @@ -0,0 +1,33 @@ + +TextTrack.oncuechange + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html new file mode 100644 index 0000000000..09043458cc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html @@ -0,0 +1,50 @@ + +TextTrack.removeCue() + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor.html new file mode 100644 index 0000000000..8ee9adb1c0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor.html @@ -0,0 +1,23 @@ + + + + TextTrackCue constructor + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html new file mode 100644 index 0000000000..18b14bdfa9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html @@ -0,0 +1,40 @@ + +TextTrackCue.endTime + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html new file mode 100644 index 0000000000..a88f94766f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html @@ -0,0 +1,39 @@ + +TextTrackCue.id + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html new file mode 100644 index 0000000000..17deed0530 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html @@ -0,0 +1,36 @@ + +TextTrackCue.onenter + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html new file mode 100644 index 0000000000..815377e4d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html @@ -0,0 +1,36 @@ + +TextTrackCue.onexit + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html new file mode 100644 index 0000000000..31ea4c63b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html @@ -0,0 +1,40 @@ + +TextTrackCue.pauseOnExit + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html new file mode 100644 index 0000000000..7fba1df415 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html @@ -0,0 +1,39 @@ + +TextTrackCue.startTime + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html new file mode 100644 index 0000000000..219e3e703b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html @@ -0,0 +1,38 @@ + +TextTrackCue.track + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html new file mode 100644 index 0000000000..8184189b05 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html @@ -0,0 +1,53 @@ + +TextTrackCueList.getCueById + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html new file mode 100644 index 0000000000..8056d24543 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html @@ -0,0 +1,49 @@ + +TextTrackCueList getter + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html new file mode 100644 index 0000000000..91e6e7ff99 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html @@ -0,0 +1,22 @@ + +TextTrackCueList.length + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html new file mode 100644 index 0000000000..b701dd5e73 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html @@ -0,0 +1,16 @@ + +TextTrackList.getTrackById + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html new file mode 100644 index 0000000000..9baa459419 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html @@ -0,0 +1,32 @@ + +TextTrackList getter + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html new file mode 100644 index 0000000000..7a24130d10 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html @@ -0,0 +1,18 @@ + +TextTrackList.length + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html new file mode 100644 index 0000000000..114ca89046 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html @@ -0,0 +1,33 @@ + +TextTrackList.onaddtrack + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html new file mode 100644 index 0000000000..b8da16ce2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html @@ -0,0 +1,33 @@ + +TextTrackList.onremovetrack + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html new file mode 100644 index 0000000000..cb5b89711f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html @@ -0,0 +1,25 @@ + +TrackEvent constructor + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html new file mode 100644 index 0000000000..1d7eb540c3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html @@ -0,0 +1,15 @@ + +TrackEvent created with createEvent + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html new file mode 100644 index 0000000000..332184d55c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html @@ -0,0 +1,29 @@ + +autoplay overrides preload + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html new file mode 100644 index 0000000000..d163c0e5b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html @@ -0,0 +1,91 @@ + +load() fires abort/emptied events when networkState is not NETWORK_EMPTY + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html new file mode 100644 index 0000000000..54d5c28dad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html @@ -0,0 +1,44 @@ + +load() removes queued error event + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html new file mode 100644 index 0000000000..39c9887505 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html @@ -0,0 +1,29 @@ + +inserting another source before the candidate + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html new file mode 100644 index 0000000000..f59452e0d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html @@ -0,0 +1,21 @@ + +moving the candidate source + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html new file mode 100644 index 0000000000..0c1e6f0ad8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html @@ -0,0 +1,26 @@ + +removing the candidate source, addEventListener + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html new file mode 100644 index 0000000000..f384eb3121 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html @@ -0,0 +1,26 @@ + +removing the candidate source, no listener + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html new file mode 100644 index 0000000000..c295c85bfc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html @@ -0,0 +1,26 @@ + +removing the candidate source, onerror + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html new file mode 100644 index 0000000000..61902161ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-currentSrc.html @@ -0,0 +1,93 @@ + +currentSrc should not be reset when changing source + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html new file mode 100644 index 0000000000..cb2a579597 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html @@ -0,0 +1,13 @@ + +NOT invoking resource selection with new Audio() sans src + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html new file mode 100644 index 0000000000..662129756f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html @@ -0,0 +1,12 @@ + +invoking resource selection with new Audio(src) + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html new file mode 100644 index 0000000000..1635598efd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html @@ -0,0 +1,30 @@ + +await a stable state and sync event handlers + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html new file mode 100644 index 0000000000..5d4c32f670 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html @@ -0,0 +1,22 @@ + +NOT invoking resource selection by inserting document fragment into a document + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html new file mode 100644 index 0000000000..2f9ec978a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html @@ -0,0 +1,12 @@ + +NOT invoking resource selection by inserting into a document + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html new file mode 100644 index 0000000000..45d133d878 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html @@ -0,0 +1,23 @@ + +NOT invoking resource selection by inserting into other document with src set + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html new file mode 100644 index 0000000000..6da34344fd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html @@ -0,0 +1,19 @@ + +NOT invoking resource selection by inserting parent into a document + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html new file mode 100644 index 0000000000..b79bea52f1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html @@ -0,0 +1,14 @@ + +NOT invoking resource selection by inserting <source> in <div> in <video> + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html new file mode 100644 index 0000000000..b73f229ecc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html @@ -0,0 +1,14 @@ + +NOT invoking resource selection by inserting <source> in the wrong namespace + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html new file mode 100644 index 0000000000..5ef6e4cb3b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html @@ -0,0 +1,38 @@ + +NOT invoking resource selection by inserting <source> when networkState is not NETWORK_EMPTY + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html new file mode 100644 index 0000000000..2007b2e8b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html @@ -0,0 +1,13 @@ + +invoking resource selection by inserting <source> in video not in a document + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html new file mode 100644 index 0000000000..969daad623 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html @@ -0,0 +1,14 @@ + +invoking resource selection by inserting <source> + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html new file mode 100644 index 0000000000..909c72cd15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html @@ -0,0 +1,20 @@ + +invoking resource selection with load() + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html new file mode 100644 index 0000000000..18561a2649 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html @@ -0,0 +1,28 @@ + +NOT invoking resource selection with pause() when networkState is not NETWORK_EMPTY + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html new file mode 100644 index 0000000000..4f1bca74dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html @@ -0,0 +1,20 @@ + +invoking resource selection with pause() + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html new file mode 100644 index 0000000000..64a440080c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html @@ -0,0 +1,20 @@ + +invoking resource selection with play() + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html new file mode 100644 index 0000000000..1eed276b20 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html @@ -0,0 +1,29 @@ + +NOT invoking resource selection with implicit pause() when networkState is not NETWORK_EMPTY + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html new file mode 100644 index 0000000000..65d0f73114 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html @@ -0,0 +1,15 @@ + +NOT invoking resource selection by removing from document with NETWORK_EMPTY + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html new file mode 100644 index 0000000000..6302ffeacf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html @@ -0,0 +1,22 @@ + +NOT invoking media load or resource selection when removing the src attribute + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html new file mode 100644 index 0000000000..438db124d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html @@ -0,0 +1,14 @@ + +NOT invoking load by setting src in the wrong namespace + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html new file mode 100644 index 0000000000..ed86dbe0c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html @@ -0,0 +1,16 @@ + +invoking load by setting src when networkState is not NETWORK_EMPTY + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html new file mode 100644 index 0000000000..f6c4f2406a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html @@ -0,0 +1,13 @@ + +invoking load by setting src on video not in a document + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html new file mode 100644 index 0000000000..e04b1b0580 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html @@ -0,0 +1,14 @@ + +invoking load by setting src + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html new file mode 100644 index 0000000000..dad5e5fd00 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html @@ -0,0 +1,26 @@ + +pointer updates (control test) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html new file mode 100644 index 0000000000..3ee141e306 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html @@ -0,0 +1,33 @@ + +pointer updates (adding br elements) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html new file mode 100644 index 0000000000..2d32e6fca0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html @@ -0,0 +1,44 @@ + +pointer updates (adding source elements) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html new file mode 100644 index 0000000000..15a4e4be06 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html @@ -0,0 +1,33 @@ + +pointer updates (adding text nodes) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html new file mode 100644 index 0000000000..0d1c940375 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html @@ -0,0 +1,56 @@ + +pointer updates (removing source element after pointer) + + +
+ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html new file mode 100644 index 0000000000..191f9b5e21 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html @@ -0,0 +1,43 @@ + +pointer updates (removing source elements) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html new file mode 100644 index 0000000000..f0fe5da909 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html @@ -0,0 +1,33 @@ + +pointer updates (removing text nodes) + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html new file mode 100644 index 0000000000..fbeead0191 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html @@ -0,0 +1,24 @@ + +Changes to networkState when inserting and removing a <source> + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html new file mode 100644 index 0000000000..4d78871823 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html @@ -0,0 +1,22 @@ + +invoking resource selection by setting src; await stable state + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-resumes-onload.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-resumes-onload.html new file mode 100644 index 0000000000..b166763d14 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-resumes-onload.html @@ -0,0 +1,18 @@ + +resource selection should not delay the load event indefinitely + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-env-change.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-env-change.html new file mode 100644 index 0000000000..67f2c8300d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-env-change.html @@ -0,0 +1,24 @@ + +the <source> media attribute: no reaction to environment change + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html new file mode 100644 index 0000000000..df5f47add2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html @@ -0,0 +1,14 @@ + +the <source> media attribute + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py new file mode 100644 index 0000000000..4eae3261f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py @@ -0,0 +1,5 @@ +import time + +def main(request, response): + time.sleep(0.1) + return [(b"Content-Type", b"text/plain")], u"FAIL" diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/media-min-width.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/media-min-width.html new file mode 100644 index 0000000000..8a4ad500cb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/media-min-width.html @@ -0,0 +1,31 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-beforeunload-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-beforeunload-manual.html new file mode 100644 index 0000000000..61ed225fa1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-beforeunload-manual.html @@ -0,0 +1,30 @@ + +stable state in beforeunload + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-dialogs-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-dialogs-manual.html new file mode 100644 index 0000000000..267dde913c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-dialogs-manual.html @@ -0,0 +1,18 @@ + +stable state in dialogs + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-print-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-print-manual.html new file mode 100644 index 0000000000..1261a00793 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/stable-state-print-manual.html @@ -0,0 +1,22 @@ + +stable state in print() + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html new file mode 100644 index 0000000000..be4d09f739 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html @@ -0,0 +1,48 @@ + +currentSrc + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/media_fragment_seek.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/media_fragment_seek.html new file mode 100644 index 0000000000..2a0106ce16 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/media_fragment_seek.html @@ -0,0 +1,49 @@ + + + +Video should seek to time specified in media fragment syntax + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html new file mode 100644 index 0000000000..56edf25aa8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html @@ -0,0 +1,123 @@ + +canPlayType + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html new file mode 100644 index 0000000000..8570bfd111 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html @@ -0,0 +1,42 @@ + + + + {audio,video}.networkState - NETWORK_LOADING + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_progress.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_progress.html new file mode 100644 index 0000000000..db9df23cb6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_during_progress.html @@ -0,0 +1,42 @@ + + + + {audio,video}.networkState - NETWORK_LOADING + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_initial.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_initial.html new file mode 100644 index 0000000000..0a203e6542 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/networkState_initial.html @@ -0,0 +1,33 @@ + + + + {audio,video}.networkState - default state + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html new file mode 100644 index 0000000000..e9b6589941 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html @@ -0,0 +1,32 @@ + +currentTime + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html new file mode 100644 index 0000000000..0ac26eddb9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html @@ -0,0 +1,11 @@ + +duration + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html new file mode 100644 index 0000000000..946deecf43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - paused property + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_true_during_pause.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_true_during_pause.html new file mode 100644 index 0000000000..817615c5cb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/paused_true_during_pause.html @@ -0,0 +1,48 @@ + + + + {audio,video} events - paused property + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/pitch-detector.js b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/pitch-detector.js new file mode 100644 index 0000000000..78f22ccd85 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/pitch-detector.js @@ -0,0 +1,58 @@ +// This should be removed when the webaudio/historical.html tests are passing. +// Tracking bug: https://bugs.webkit.org/show_bug.cgi?id=204719 +window.AudioContext = window.AudioContext || window.webkitAudioContext; + +var FFT_SIZE = 2048; + +var audioContext; +var sourceNode; + +function getPitchDetector(media) { + if(!audioContext) { + audioContext = new AudioContext(); + sourceNode = audioContext.createMediaElementSource(media); + } + + var analyser = audioContext.createAnalyser(); + analyser.fftSize = FFT_SIZE; + + sourceNode.connect(analyser); + analyser.connect(audioContext.destination); + + return { + ensureStart() { return audioContext.resume(); }, + detect() { return getPitch(analyser); }, + cleanup() { + sourceNode.disconnect(); + analyser.disconnect(); + }, + }; +} + +function getPitch(analyser) { + // Returns the frequency value for the nth FFT bin. + var binConverter = (bin) => + (audioContext.sampleRate/2)*((bin)/(analyser.frequencyBinCount-1)); + + var buf = new Uint8Array(analyser.frequencyBinCount); + analyser.getByteFrequencyData(buf); + return findDominantFrequency(buf, binConverter); +} + +// Returns the dominant frequency, +/- a certain margin. +function findDominantFrequency(buf, binConverter) { + var max = 0; + var bin = 0; + + for (var i=0;i max) { + max = buf[i]; + bin = i; + } + } + + // The spread of frequencies within bins is constant and corresponds to + // (1/(FFT_SIZE-1))th of the sample rate. Use the value of bin #1 as a + // shorthand for that value. + return { value:binConverter(bin), margin:binConverter(1) }; +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/loop-from-ended.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/loop-from-ended.tentative.html new file mode 100644 index 0000000000..d099a8a0f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/loop-from-ended.tentative.html @@ -0,0 +1,57 @@ + +play() with loop set to true after playback ended + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html new file mode 100644 index 0000000000..77b4a288d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html @@ -0,0 +1,25 @@ + +paused state when moving to other document + + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html new file mode 100644 index 0000000000..911aa7b5c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html @@ -0,0 +1,25 @@ + +paused state when moving within a document + + + +
+ +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-different-load.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-different-load.html new file mode 100644 index 0000000000..4802665cdd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-different-load.html @@ -0,0 +1,44 @@ + +paused state when removing from a document + + + + +
+
+ +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html new file mode 100644 index 0000000000..5140ea5611 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html @@ -0,0 +1,27 @@ + +paused state when removing from a document when networkState is NETWORK_EMPTY + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html new file mode 100644 index 0000000000..5425844037 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html @@ -0,0 +1,37 @@ + +paused state when removing from a document + + + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html new file mode 100644 index 0000000000..8e9a7843b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html @@ -0,0 +1,24 @@ + +play() in detached document + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html new file mode 100644 index 0000000000..d8e14b5fc1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html @@ -0,0 +1,53 @@ + +playbackRate + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html new file mode 100644 index 0000000000..2670b0dd81 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html @@ -0,0 +1,31 @@ + + + + {audio,video}.preload - reflection test + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preserves-pitch.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preserves-pitch.html new file mode 100644 index 0000000000..ba76f51d47 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/preserves-pitch.html @@ -0,0 +1,132 @@ + +Test preservesPitch. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-hidden.optional.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-hidden.optional.html new file mode 100644 index 0000000000..16c6e29be9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-hidden.optional.html @@ -0,0 +1,37 @@ + +autoplay hidden + + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks.html new file mode 100644 index 0000000000..930d9cbd5b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks.html @@ -0,0 +1,46 @@ + +autoplay with slow text tracks + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html new file mode 100644 index 0000000000..b60b58a421 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html @@ -0,0 +1,73 @@ + +autoplay + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html new file mode 100644 index 0000000000..358a87fe21 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - readyState property during canplay + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html new file mode 100644 index 0000000000..2721d18633 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - readyState property during canplaythrough + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html new file mode 100644 index 0000000000..f237b1fbd3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - readyState property during loadeddata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html new file mode 100644 index 0000000000..73f33f0b98 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - readyState property during loadedmetadata + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html new file mode 100644 index 0000000000..663bad701b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html @@ -0,0 +1,42 @@ + + + + {audio,video} events - readyState property during playing + + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_initial.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_initial.html new file mode 100644 index 0000000000..e9c112bd24 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/readyState_initial.html @@ -0,0 +1,33 @@ + + + + {audio,video}.readyState - default state + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html new file mode 100644 index 0000000000..82b27bf87d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html @@ -0,0 +1,34 @@ + +seek to currentTime + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm new file mode 100644 index 0000000000..a31f6c07ab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm @@ -0,0 +1,23 @@ + +seek to Number.MAX_VALUE + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm new file mode 100644 index 0000000000..56a99028de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm @@ -0,0 +1,23 @@ + +seek to negative time + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_object_blob.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_object_blob.html new file mode 100644 index 0000000000..ae2bb76b26 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_object_blob.html @@ -0,0 +1,26 @@ + + +HTMLMediaElement.srcObject blob + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html new file mode 100644 index 0000000000..3dd43cc3f5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html @@ -0,0 +1,33 @@ + + + + {audio,video}.src - reflection test + + + + +

spec reference

+ + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cloneNode.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cloneNode.html new file mode 100644 index 0000000000..9e0f0bf900 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cloneNode.html @@ -0,0 +1,87 @@ + +track element cloneNode + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/003.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/003.html new file mode 100644 index 0000000000..4236df29b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/003.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/004.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/004.html new file mode 100644 index 0000000000..4f86d011a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/004.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/005.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/005.html new file mode 100644 index 0000000000..e6a693400c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/005.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/006.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/006.html new file mode 100644 index 0000000000..351b97d677 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/006.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/007.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/007.html new file mode 100644 index 0000000000..4ccc6b66ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/007.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/008.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/008.html new file mode 100644 index 0000000000..0444a83085 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/008.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/009.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/009.html new file mode 100644 index 0000000000..dd62232755 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/009.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/010.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/010.html new file mode 100644 index 0000000000..d75d6f4d6d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/010.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/011.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/011.html new file mode 100644 index 0000000000..6d0fae6de7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/011.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/012.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/012.html new file mode 100644 index 0000000000..110497b494 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/012.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/013.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/013.html new file mode 100644 index 0000000000..d2a9ddb193 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/013.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/014.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/014.html new file mode 100644 index 0000000000..a1d6a8b295 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/014.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/015.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/015.html new file mode 100644 index 0000000000..2850a24e17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/015.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, same-origin, with headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/016.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/016.html new file mode 100644 index 0000000000..5cd5a85d43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/016.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/017.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/017.html new file mode 100644 index 0000000000..0ec5bc3291 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/017.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/018.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/018.html new file mode 100644 index 0000000000..f639d043a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/018.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/019.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/019.html new file mode 100644 index 0000000000..45e1291c92 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/019.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, with headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/020.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/020.html new file mode 100644 index 0000000000..e1153b6813 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/020.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/021.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/021.html new file mode 100644 index 0000000000..ec2e9d8bb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/021.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, with headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/022.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/022.html new file mode 100644 index 0000000000..e8fb0c3d43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/022.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, with headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/023.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/023.html new file mode 100644 index 0000000000..ac9bb35465 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/023.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/024.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/024.html new file mode 100644 index 0000000000..302340022d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/024.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, with headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/025.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/025.html new file mode 100644 index 0000000000..5cbe8528e2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/025.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, with headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/026.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/026.html new file mode 100644 index 0000000000..c8386ffff3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/026.html @@ -0,0 +1,10 @@ + +track CORS: No CORS, same-origin, with headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/027.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/027.html new file mode 100644 index 0000000000..5fe4760e66 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/027.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/028.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/028.html new file mode 100644 index 0000000000..6019d37b63 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/028.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, with headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/029.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/029.html new file mode 100644 index 0000000000..7fa85456de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/029.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/030.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/030.html new file mode 100644 index 0000000000..f7abf3b1ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/030.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, with headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/031.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/031.html new file mode 100644 index 0000000000..d709d0bc42 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/031.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, no headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/032.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/032.html new file mode 100644 index 0000000000..62b1008a41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/032.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, with headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/033.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/033.html new file mode 100644 index 0000000000..215cae2419 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/033.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, not same-origin, with headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/034.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/034.html new file mode 100644 index 0000000000..bebb43ba8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/034.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, no headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/035.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/035.html new file mode 100644 index 0000000000..a17fb7dfc1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/035.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, with headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/036.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/036.html new file mode 100644 index 0000000000..52411177ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/036.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, not same-origin, with headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/037.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/037.html new file mode 100644 index 0000000000..675b913a13 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/037.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to not same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/038.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/038.html new file mode 100644 index 0000000000..a29b2bdead --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/038.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, with headers, redirects to not same-origin, with headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/039.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/039.html new file mode 100644 index 0000000000..fcd4871ddb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/039.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to not same-origin, with headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/040.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/040.html new file mode 100644 index 0000000000..3c819684c4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/040.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to not same-origin, no headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/041.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/041.html new file mode 100644 index 0000000000..f0f81953fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/041.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, with headers, redirects to not same-origin, with headers, redirects to same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/042.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/042.html new file mode 100644 index 0000000000..c1ffa5f1ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/042.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to not same-origin, with headers, redirects to same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/043.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/043.html new file mode 100644 index 0000000000..09072a9895 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/043.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to same-origin, no headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/044.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/044.html new file mode 100644 index 0000000000..0d4a9fefbd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/044.html @@ -0,0 +1,10 @@ + +track CORS: Anonymous, same-origin, no headers, redirects to same-origin, no headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/045.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/045.html new file mode 100644 index 0000000000..7151364f9c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/045.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to same-origin, no headers, redirects to not same-origin, no headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/046.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/046.html new file mode 100644 index 0000000000..e286462814 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/046.html @@ -0,0 +1,10 @@ + +track CORS: Use Credentials, same-origin, no headers, redirects to same-origin, no headers, redirects to not same-origin, with headers + + +
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js new file mode 100644 index 0000000000..e30c627149 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js @@ -0,0 +1,144 @@ +setup(function(){ + window.id = token(); + var p = document.createElement('p'); + p.innerHTML = 'Test id: '+id+''; + document.body.appendChild(p); + window.actual = {event:null, requests:[]}; + window.errors = []; + window.origin = location.protocol+'//'+location.host; + window.escapedOrigin = encodeURIComponent(origin); + window.sameOriginURL = "http://{{domains[]}}:{{ports[http][0]}}" + location.pathname.replace(/\/[^\/]+$/, '/'); + window.otherOriginURL = "http://{{domains[www1]}}:{{ports[http][0]}}" + location.pathname.replace(/\/[^\/]+$/, '/'); +}, {timeout:10000, explicit_done:true}); + +onload = function() { + (async_test()).step(function() { + // fail early if track isn't supported + assert_true('HTMLTrackElement' in window, 'track not supported'); + window.corsMode = document.title.match(/^track CORS: (No CORS|Anonymous|Use Credentials)/)[1]; + var requests_tmp = document.title.substr(('track CORS: '+corsMode+', ').length).split(/, redirects to /g); + window.requests = []; + requests_tmp.forEach(function(r) { + var parts = r.split(', '); + requests.push({sameOrigin:parts[0] == 'same-origin', withHeaders:parts[1] == 'with headers'}); + }); + if (document.title.indexOf('not same-origin') > -1) { + window.hasCrossDomainCookie = true; + this.step(setCrossDomainCookie); + } else { + window.hasCrossDomainCookie = false; + this.step(loadTrack); + } + }); + done(); +}; + +function setCrossDomainCookie() { + var iframe = document.createElement('iframe'); + iframe.onload = this.step_func(loadTrack); + iframe.src = otherOriginURL + 'support/set-cookie.html#'+id; + document.body.appendChild(iframe); +} + +function loadTrack() { + var video = document.createElement('video'); + window.track = document.createElement('track'); + if (corsMode == 'Anonymous') + video.setAttribute('crossorigin', 'anonymous'); + else if (corsMode == 'Use Credentials') + video.setAttribute('crossorigin', 'use-credentials'); + // else No CORS, omit the crossorigin attribute + video.appendChild(track); + document.body.appendChild(video); + track.track.mode = 'showing'; + document.cookie = id+'=yes;path=/;max-age=10'; + var url = ''; + var r; + while (r = requests.pop()) { + url = (r.sameOrigin ? sameOriginURL : otherOriginURL) + + 'support/cors-tester.py?id=' + id + + (r.withHeaders ? '&origin=' + escapedOrigin : '') + + (url === '' ? '' : '&redirect=' + encodeURIComponent(url)); + } + track.src = url; + track.onerror = track.onload = this.step_func(function(e) { + actual.event = e.type; + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'support/cors-tester.py?read=true&id=' + id, true); + xhr.onload = this.step_func(function() { + if (xhr.status == 200) { + var lines = xhr.responseText.split('\n'); + lines.forEach(function(line) { + var chunks = line.split(' | '); + var current = {}; + actual.requests.push(current); + chunks.forEach(function(chunk) { + var nameval = chunk.split(' = '); + var name = nameval[0]; + var value = nameval[1]; + current[name] = value; + }); + }); + } else if (xhr.status == 404) { + //No stash was found + } else { + errors.push('got unexpected xhr status: '+xhr.status); + } + this.step(removeCookies); + }); + xhr.onerror = this.step_func(function() { + errors.push('got xhr error'); + this.step(removeCookies); + }); + xhr.send(); + }); +} + +function removeCookies() { + document.cookie = id+'=;path=/;max-age=0'; + var nextStep = checkData; + if (hasCrossDomainCookie) { + var iframe = document.createElement('iframe'); + iframe.onload = this.step_func(nextStep); + iframe.src = otherOriginURL + 'support/cors-tester.py?delete-cookie&id=' + id; + document.body.appendChild(iframe); + } else { + this.step(nextStep); + } +} + +function removeLog() { + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'support/cors-tester.py?cleanup&id='+id, true); + xhr.onload = this.step_func(function() { + assert_equals(xhr.responseText, 'OK', 'failed to clean up log: '+id); + this.step(checkData); + }); + xhr.onerror = this.step_func(function() { + assert_unreached('failed to clean up log: '+id); + }); + xhr.send(); +} + +function checkData() { + assert_equals(errors.length, 0, errors); + try { + if (actual.event == 'load' && expected.event == 'error') + assert_unreached('Security problem: got load event but expected error event'); + assert_object_equals(actual, expected); + } catch(ex) { + var style = document.createElement('style'); + style.textContent = '.json-diffs td { vertical-align:top } .json-diffs pre { margin:0 }'; + document.head.appendChild(style); + var table = document.createElement('table'); + table.border = ""; + table.className = 'json-diffs'; + table.innerHTML = 'ActualExpected
';
+        table.getElementsByTagName('pre')[0].textContent = JSON.stringify(actual, null, 2);
+        table.getElementsByTagName('pre')[1].textContent = JSON.stringify(expected, null, 2);
+        document.body.insertBefore(table, document.getElementById('log'));
+        throw ex;
+    }
+    assert_equals(track.track.cues.length, expected.event == 'load' ? 1 : 0, 'track.track.cues.length');
+    this.done();
+}
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/cors-tester.py b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/cors-tester.py
new file mode 100644
index 0000000000..ad1cce1922
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/cors-tester.py
@@ -0,0 +1,50 @@
+from wptserve.handlers import HTTPException
+
+def main(request, response):
+    if request.method != u"GET":
+        raise HTTPException(400, message=u"Method was not GET")
+
+    if not b"id" in request.GET:
+        raise HTTPException(400, message=u"No id")
+
+    id = request.GET[b'id']
+    if b"read" in request.GET:
+        data = request.server.stash.take(id)
+        if data is None:
+            response.set_error(404, u"Tried to read data not yet set")
+            return
+        return [(b"Content-Type", b"text/plain")], data
+
+    elif b"cleanup" in request.GET:
+        request.server.stash.take(id)
+        return b"OK"
+
+    elif b"delete-cookie" in request.GET:
+        response.delete_cookie(id)
+        return [(b"Content-Type", b"text/plain")], b"OK"
+
+    if b"origin" in request.GET:
+        response.headers.set(b'Access-Control-Allow-Origin', request.GET[b'origin'])
+        response.headers.set(b'Access-Control-Allow-Credentials', b'true')
+
+    cors = request.headers.get(b"origin", b"no")
+
+    cookie = request.cookies.first(id, None)
+    cookie_value = cookie.value if cookie is not None else b"no"
+
+    line = b'cors = ' + cors + b' | cookie = ' + cookie_value
+
+    data = request.server.stash.take(id)
+    if data is not None:
+        line = data + b"\n" + line
+
+    request.server.stash.put(id, line)
+
+    if b"redirect" in request.GET:
+        response.status = 302
+        response.headers.set(b'Location', request.GET[b'redirect'])
+    else:
+        return b"""WEBVTT
+
+00:00:00.000 --> 00:00:10.000
+Test"""
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/remove-cookie.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/remove-cookie.html
new file mode 100644
index 0000000000..00430e3f0e
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/remove-cookie.html
@@ -0,0 +1,6 @@
+
+Remove cookie from location.hash
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/set-cookie.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/set-cookie.html
new file mode 100644
index 0000000000..cc1c926386
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/set-cookie.html
@@ -0,0 +1,6 @@
+
+Set cookie from location.hash
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/crashtests/track-element-src-aborted-load-onerror-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/crashtests/track-element-src-aborted-load-onerror-crash.html
new file mode 100644
index 0000000000..9db5ef0748
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/crashtests/track-element-src-aborted-load-onerror-crash.html
@@ -0,0 +1,21 @@
+
+HTMLTrackElement 'src' attribute changed, load pending, 'error' handler mutates
+
+
+
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/no-cuechange-before-play.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/no-cuechange-before-play.html
new file mode 100644
index 0000000000..cd53914ecd
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/no-cuechange-before-play.html
@@ -0,0 +1,27 @@
+
+Ensure that the 'cuechange' event is not fired before video playback has begun.
+
+
+
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning-bad.vtt
new file mode 100644
index 0000000000..ff4c3fb5cd
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning-bad.vtt
@@ -0,0 +1,20 @@
+WEBVTT
+Either one or both of positioning and alignment values are invalid.
+
+1
+00:00:00.000 --> 00:00:30.500 position:10% align: start
+Bear is Coming!!!!!
+Positioning on the left bottom, middle aligned,
+because the alignment is mistyped.
+
+2
+00:00:31.000 --> 00:00:45.500 position:200% align:middle
+I said Bear is coming!!!!
+Positioning on the bottom middle, middle aligned,
+because the positioning is off.
+
+3
+00:01:01.000 --> 00:02:00.500 position:-80% align:ends
+I said Bear is coming now!!!!
+Positioning on the bottom middle, middle aligned,
+because both the alignment and positioning don't apply.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning.vtt
new file mode 100644
index 0000000000..a6e6af2ef9
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning.vtt
@@ -0,0 +1,20 @@
+WEBVTT
+Cues should position at different horizontal positions with different alignments.
+
+1
+00:00:00.000 --> 00:00:30.500 position:10% align:start
+Bear is Coming!!!!!
+Positioning on the left bottom, start aligned, and
+first character rendering position is at 10% of width.
+
+2
+00:00:31.000 --> 00:00:45.500 position:20% align:middle
+I said Bear is coming!!!!
+Positioning on the bottom left, middle aligned, and
+middle character rendering position of each line is at 20% of width.
+
+3
+00:01:01.000 --> 00:02:00.500 align:end position:80%
+I said Bear is coming now!!!!
+Positioning on the bottom right, end aligned, and
+last character rendering position of each line is at 80% of width.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position-bad.vtt
new file mode 100644
index 0000000000..b196f13a20
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position-bad.vtt
@@ -0,0 +1,21 @@
+WEBVTT
+One or more of line/text positioning and alignment values are invalid (settings are ignored).
+
+1
+00:00:00.000 --> 00:00:30.500  position: 0% align: start line: 0%
+Bear is Coming!!!!!
+None of the cue settings will be applied, just the default.
+
+2
+00:00:31.000 --> 00:00:01.500 position:0% align:end line:-30%
+I said Bear is coming!!!!
+The line position setting is ignored.
+No text is visible though because it's off-screen at position
+0 and the last character is at position 0%.
+
+3
+00:01:01.000 --> 00:01:30.000 line:-3 align:middler position:60%
+I said Bear is coming now!!!!
+Positioning on line 3 from the viewport bottom, middle aligned,
+with middle character of cue at 60% width.
+The alignment is ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position.vtt
new file mode 100644
index 0000000000..dd3a6debb8
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position.vtt
@@ -0,0 +1,28 @@
+WEBVTT
+Cues with valid alignment, line and text position settings.
+
+1
+00:00:00.000 --> 00:00:15.000  position:10% align:start line:0%
+Bear is Coming!!!!!
+Positioning on the top of the viewport at 10% horizontally,
+start aligned.
+
+00:00:15.500 --> 00:00:30.500 line:0 align:start
+Bear is Coming!!!!!
+This is line 0, middle aligned, first character at 50% width.
+
+2
+00:00:31.000 --> 00:00:45.500 position:80% line:80%
+I said Bear is coming!!!!
+Middle aligned, middle of cue's character is at 80% width and 80% height.
+
+00:00:46.000 --> 00:01:00.500 line:5 align:end position:30%
+I said Bear is coming!!!!
+This is line 6 from the top of the video viewport,
+end aligned with last character at 30% of viewport width.
+
+3
+00:01:01.000 --> 00:01:30.000 line:-3 align:middle position:60%
+I said Bear is coming now!!!!
+Positioning on line 3 from the viewport bottom, middle aligned,
+with middle character of cue at 60% width.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-bad.vtt
new file mode 100644
index 0000000000..5beb376f45
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-bad.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+Cue alignment may only be start, middle, or end.  These are all misspelled and so will default to middle.
+
+1
+00:00:00.000 --> 00:00:30.500 align:starta
+Bear is Coming!!!!!
+Erroneous alignment value -> middle.
+
+2
+00:00:31.000 --> 00:01:00.500 align:-start
+I said Bear is coming!!!!
+Erroneous alignment value --> middle.
+
+3
+00:01:01.000 --> 00:02:00.500 align: end
+I said Bear is coming now!!!!
+Erroneous alignment value with surplus whitespace --> middle.
+
+4
+00:02:01.000 --> 100:20:00.500 align:piugjk
+I said Bear is coming now!!!!
+Erroneous alignment value -> middle.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-ltr.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-ltr.vtt
new file mode 100644
index 0000000000..673b29ac85
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-ltr.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+Cue alignment may be start, middle, or end (default is middle).
+
+1
+00:00:00.000 --> 00:00:30.500 align:start
+الدب قادم!!!!!
+بدء محاذاته.
+
+2
+00:00:31.000 --> 00:01:00.500 align:middle
+قلت الدب قادم!!
+محاذاة الوسط.
+
+3
+00:01:01.000 --> 00:02:00.500 align:end
+قلت الدب قادم الآن!!
+محاذاة الغاية.
+
+4
+00:02:01.000 --> 100:20:00.500
+قلت الدب قادم الآن!!
+الافتراضية هي محاذاة الوسط.
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment.vtt
new file mode 100644
index 0000000000..ad7792f772
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+Cue alignment may be start, middle, or end (default is middle).
+
+1
+00:00:00.000 --> 00:00:30.500 align:start
+Bear is Coming!!!!!
+Start align.
+
+2
+00:00:31.000 --> 00:01:00.500 align:middle
+I said Bear is coming!!!!
+Middle align.
+
+3
+00:01:01.000 --> 00:02:00.500 align:end
+I said Bear is coming now!!!!
+End align.
+
+4
+00:02:01.000 --> 100:20:00.500
+I said Bear is coming now!!!!
+Default is middle alignment.
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/bom.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/bom.vtt
new file mode 100644
index 0000000000..0c8de32bcb
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/bom.vtt
@@ -0,0 +1,10 @@
+WEBVTT FILE
+A BOM character at the start of a file should be ignored.
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:20:00.500
+I said Bear is coming!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-fast.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-fast.vtt
new file mode 100644
index 0000000000..7fe5b1241a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-fast.vtt
@@ -0,0 +1,13 @@
+WEBVTT
+
+1
+00:00:00.000 --> 00:00:00.300
+Lorem
+
+2
+00:00:00.300 --> 00:00:01.300
+ipsum
+
+3
+00:00:01.800 --> 00:00:02.800
+dolor
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-gaps.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-gaps.vtt
new file mode 100644
index 0000000000..44c74665c2
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-gaps.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+
+1
+00:00:01.000 --> 00:00:02.000
+Lorem ipsum dolor sit amet,
+
+2
+00:00:03.000 --> 00:00:04.000
+consectetuer adipiscing elit,
+
+3
+00:00:05.000 --> 00:00:06.000
+sed diam nonummy nibh euismod tincidunt
+
+4
+00:00:07.000 --> 00:00:08.000
+ut laoreet dolore magna aliquam erat volutpat.
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-html.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-html.vtt
new file mode 100644
index 0000000000..0730f8bc40
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-html.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+
+1
+00:00:00.000 --> 00:00:01.000
+Lorem ipsum dolor sit amet,
+
+2
+00:00:03.000 --> 00:00:04.000
+consectetuer adipiscing elit,
+
+3
+00:00:05.000 --> 00:00:06.000
+sed diam nonummy nibh euismod tincidunt
+
+4
+00:00:07.000 --> 00:00:08.000
+ut laoreet dolore magna aliquam erat volutpat.
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions.vtt
new file mode 100644
index 0000000000..787c430868
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+
+1
+00:00:00.000 --> 00:00:01.000
+Lorem
+
+2
+00:00:01.000 --> 00:00:02.000
+ipsum
+
+3
+00:00:02.000 --> 00:00:03.000
+dolor
+
+4
+00:00:03.000 --> 00:00:04.000
+sit
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class-bad.vtt
new file mode 100644
index 0000000000..650ea2c496
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class-bad.vtt
@@ -0,0 +1,17 @@
+WEBVTT
+Invalid  class markup.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+Bear is Coming!!!!!
+The space signified an annotation start.
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+I said Bear is coming!!!!
+Probably should only allow characters that CSS allows in class names.
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+I said Bear is coming now!!!!
+Probably should only allow characters that CSS allows in class names.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class.vtt
new file mode 100644
index 0000000000..ea3ef623f5
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Cue text fragment with  class markup is mapped to HTML  element with CSS classes.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+I said Bear is coming!!!!
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+I said Bear is coming now!!!!
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id-error.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id-error.vtt
new file mode 100644
index 0000000000..2b5db0c1da
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id-error.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Cue identifiers cannot contain the string "-->".
+
+-->random_id
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+another random identifier-->
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+identifier-->too
+00:01:01.000 --> 00:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id.vtt
new file mode 100644
index 0000000000..3902118620
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+Random text is accepted for cue identifiers.
+
+random_id
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+another random identifier
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+identifier--too
+00:01:01.000 --> 00:02:00.500
+I said Bear is coming now!!!!
+
+identifier--too
+00:02:01.000 --> 00:03:00.500
+Duplicate identifier
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id-error.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id-error.vtt
new file mode 100644
index 0000000000..111bae6344
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id-error.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Cue identifiers cannot contain "-->".  Whole cue is ignored.
+
+-->
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+-->
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+-->
+00:01:01.000 --> 00:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id.vtt
new file mode 100644
index 0000000000..0d52a70ee4
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id.vtt
@@ -0,0 +1,11 @@
+WEBVTT
+Cues don't have to have identifiers.
+
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+00:01:01.000 --> 00:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-cuetext.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-cuetext.vtt
new file mode 100644
index 0000000000..88f56cceca
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-cuetext.vtt
@@ -0,0 +1,6 @@
+WEBVTT
+
+00:00.000 --> 00:01.000
+Valid cue 1
+00:02.000 --> 00:03.000
+Valid cue 2
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-header.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-header.vtt
new file mode 100644
index 0000000000..205955e3e4
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-header.vtt
@@ -0,0 +1,6 @@
+WEBVTT
+00:00.000 --> 00:01.000
+Valid cue 1
+
+00:02.000 --> 00:03.000
+Valid cue 2
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-note.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-note.vtt
new file mode 100644
index 0000000000..56defcc48b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-note.vtt
@@ -0,0 +1,9 @@
+WEBVTT
+
+00:00.000 --> 00:01.000
+Valid cue 1
+
+NOTE about something
+NOTE or something else - maybe an identifier
+00:02.000 --> 00:03.000
+Valid cue 2
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align-bad.vtt
new file mode 100644
index 0000000000..5e4a61a5e4
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align-bad.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+Either size or alignment are invalid.
+
+1
+00:00:00.000 --> 00:00:30.500 size:100% align:@start
+Bear is Coming!!!!!
+Box for the cue is 100% of the video viewport width, alignment is ignored.
+
+2
+00:00:31.000 --> 00:01:00.500 size:-10% align:end
+I said Bear is coming!!!!
+Box for the cue is as big as the text, no line wrapping,
+(except if viewport is too small) and end aligned.
+
+3
+00:01:01.000 --> 00:02:00.500 size:110% align:@end
+I said Bear is coming now!!!!
+Both cue size and alignment are ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align.vtt
new file mode 100644
index 0000000000..6d36536539
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align.vtt
@@ -0,0 +1,19 @@
+WEBVTT
+Valid cue size with alignment settings.
+
+1
+00:00:00.000 --> 00:00:30.500 size:100% align:start
+Bear is Coming!!!!!
+Box for the cue is 100% of the video viewport width
+and because of the start align, all text is left aligned on the video viewport.
+
+2
+00:00:31.000 --> 00:01:00.500 size:10% align:end
+I said Bear is coming!!!!
+Box for the cue is 10% of the video viewport width, which will mean that automatic line wrapping will happen
+and the text is aligned to the end.
+
+3
+00:01:01.000 --> 00:02:00.500 size:0% align:middle
+I said Bear is coming now!!!!
+Cue text box size of 0 is acceptable, even if not visible.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-bad.vtt
new file mode 100644
index 0000000000..700600d7a7
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-bad.vtt
@@ -0,0 +1,17 @@
+WEBVTT
+Invalid cue sizes (all settings are ignored).
+
+1
+00:00:00.000 --> 00:00:30.500 size:	50%
+Bear is Coming!!!!!
+Cue size setting doesn't parse and is ignored.
+
+2
+00:00:31.000 --> 00:01:00.500 size:-10%
+I said Bear is coming!!!!
+Negative cue size setting is not acceptable and is ignored.
+
+3
+00:01:01.000 --> 00:02:00.500 size:4000%
+I said Bear is coming now!!!!
+Cue size beyond 100% is not acceptable and is ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size.vtt
new file mode 100644
index 0000000000..017d59a18b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size.vtt
@@ -0,0 +1,19 @@
+WEBVTT
+Valid cue size values.
+
+1
+00:00:00.000 --> 00:00:30.500 size:100%
+Bear is Coming!!!!!
+Box for the cue is 100% of the video viewport width,
+exemplified through background color,
+even if the text needs less.
+
+2
+00:00:31.000 --> 00:01:00.500 size:10%
+I said Bear is coming!!!!
+Box for the cue is 10% of the video viewport width, which will mean that automatic line wrapping will happen.
+
+3
+00:01:01.000 --> 00:02:00.500 size:0%
+I said Bear is coming now!!!!
+Cue text box size of 0 is acceptable, even if not visible.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-chrono-order.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-chrono-order.vtt
new file mode 100644
index 0000000000..fd6d484f88
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-chrono-order.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Cues that have overlapping time ranges.
+
+1
+00:00:01.000 --> 00:00:02.000
+Bear is Coming!!!!!
+
+2
+00:00:02.500 --> 00:00:03.500
+I said Bear is coming!!!!
+
+3
+00:00:04.000 --> 00:00:05.000
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-no-separation.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-no-separation.vtt
new file mode 100644
index 0000000000..9062c67ede
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-no-separation.vtt
@@ -0,0 +1,11 @@
+WEBVTT
+Cues must be separated by at least one blank line, otherwise treated like one big cue.
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+2
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+00:01:01.000 --> 100:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-overlapping.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-overlapping.vtt
new file mode 100644
index 0000000000..3f035d331f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-overlapping.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Cues that have overlapping time ranges.
+
+1
+00:00:01.000 --> 00:00:06.000
+Bear is Coming!!!!!
+
+2
+00:00:01.500 --> 00:00:05.000
+I said Bear is coming!!!!
+
+3
+00:00:02.000 --> 00:00:05.000
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues.vtt
new file mode 100644
index 0000000000..125ed66785
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues.vtt
@@ -0,0 +1,17 @@
+WEBVTT
+Cues may be separated by one or more blank lines.
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+
+2
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+
+
+3
+00:01:01.000 --> 100:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/default-styles.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/default-styles.vtt
new file mode 100644
index 0000000000..d890ca3f71
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/default-styles.vtt
@@ -0,0 +1,19 @@
+WEBVTT
+
+COMMENT-->
+this is a comment, that will parse as part of the header;
+the STYLE and DEFAULTS below are parsed as invalid cues
+
+STYLE-->
+::cue(.narration) { color: blue; }
+
+DEFAULTS -->
+line:-1 align:middle size:50%
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:20:00.500
+I said Bear is coming!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/degenerate-cues.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/degenerate-cues.vtt
new file mode 100644
index 0000000000..c04390420f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/degenerate-cues.vtt
@@ -0,0 +1,5 @@
+WEBVTT
+
+00:00.000 --> 00:01.000
+00:02.000 --> 00:03.000
+00:04.000 --> 00:05.000
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/empty-cue.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/empty-cue.vtt
new file mode 100644
index 0000000000..dbfde34b69
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/empty-cue.vtt
@@ -0,0 +1,11 @@
+WEBVTT
+Empty cues should not be discarded.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities-wrong.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities-wrong.vtt
new file mode 100644
index 0000000000..f45fee4793
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities-wrong.vtt
@@ -0,0 +1,15 @@
+WEBVTT
+Invalid use of < and > characters.
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+This cue has a less than < character.
+It turns everything from there on into an annotation
+for an empty tag and ends only at the next > or & character.
+
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+This cue has a greater than > character.
+Since it's not related to a < character,
+it's just interpreted as text.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities.vtt
new file mode 100644
index 0000000000..a8817954a6
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities.vtt
@@ -0,0 +1,30 @@
+WEBVTT
+Cue content with escape characters for &, <, >, LRM, RLM and non-breaking space.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+This cue has an ampersand & character.
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+This cue has a less than < character.
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+This cue has a greater than > character.
+
+4
+00:02:01.000 --> 00:02:30.500 align:start position:20%
+This cue has a Left-to-Right Mark ‎.
+
+5
+00:02:31.000 --> 00:03:00.500 align:start position:20%
+This cue has a Right-to-Left Mark ‏.
+
+6
+00:03:01.000 --> 00:03:30.500 align:start position:20%
+This cue has a non-breaking space  .
+
+7
+00:03:31.000 --> 00:04:00.500
+This & is parsed to the same as &.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/interspersed-non-cue.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/interspersed-non-cue.vtt
new file mode 100644
index 0000000000..c825ab32e2
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/interspersed-non-cue.vtt
@@ -0,0 +1,9 @@
+WEBVTT
+
+00:00.000 --> 00:01.000
+First
+
+Stray Id or other non-cue content
+
+00:02.000 --> 00:03.000
+Second
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/iso2022jp3.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/iso2022jp3.vtt
new file mode 100644
index 0000000000..10a1624386
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/iso2022jp3.vtt
@@ -0,0 +1,10 @@
+WEBVTT FILE
+Different encodings (iconv) should not be recognized as WebVTT a file.
+
+1
+00:00:00.000 --> 00:00:30.500
+$B7J5$H=CG(B
+
+2
+00:00:31.000 --> 00:20:00.500
+$BEENOITB-(B
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/large-timestamp.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/large-timestamp.vtt
new file mode 100644
index 0000000000..e6c18ce3bd
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/large-timestamp.vtt
@@ -0,0 +1,5 @@
+WEBVTT
+
+1
+1234567:00:00.000 --> 1234567890:00:00.000
+A very long cue.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position-bad.vtt
new file mode 100644
index 0000000000..3d52175729
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position-bad.vtt
@@ -0,0 +1,30 @@
+WEBVTT
+Invalid positioning values (all settings are ignored).
+
+1
+00:00:00.000 --> 00:00:15.000 line:-0%
+Bear is Coming!!!!!
+Negative percentages are not allowed.
+Line position is ignored.
+
+2
+00:00:31.000 --> 00:00:45.500 line:+50%
+I said Bear is coming!!!!
+Non-numbers are not allowed.
+Line position is ignored.
+
+00:00:46.000 --> 00:01:00.500 line:+5
+I said Bear is coming!!!!
+Plus sign is not allowed.
+Line position is ignored.
+
+3
+00:01:01.000 --> 00:01:30.000 line:10%0%
+I said Bear is coming now!!!!
+Doesn't parse into a percentage.
+Line position is ignored.
+
+00:01:31.000 --> 00:02:00.500 line:-10l
+I said Bear is coming now!!!!
+Doesn't parse into a number.
+Line position is ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position.vtt
new file mode 100644
index 0000000000..82f7e2a523
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position.vtt
@@ -0,0 +1,37 @@
+WEBVTT
+Cues with valid vertical line positioning values.
+
+1
+00:00:00.000 --> 00:00:15.000 line:0%
+Bear is Coming!!!!!
+Positioning on the top of the viewport, in the middle.
+
+00:00:15.500 --> 00:00:30.500 line:0
+Bear is Coming!!!!!
+This is line 0.
+Positioning on the top of the viewport, in the middle.
+
+2
+00:00:31.000 --> 00:00:45.500 line:50%
+I said Bear is coming!!!!
+Positioning on the center of the video.
+
+
+00:00:46.000 --> 00:01:00.500 line:5
+I said Bear is coming!!!!
+This is line 6 from the top of the video viewport.
+
+3
+00:01:01.000 --> 00:01:30.000 line:100%
+I said Bear is coming now!!!!
+Positioning on the bottom middle.
+
+00:01:31.000 --> 00:02:00.500 line:-1
+I said Bear is coming now!!!!
+This is the first line at the bottom of the video viewport.
+Positioning on the bottom middle. Only 1 line shows.
+
+00:02:01.000 --> 00:02:30.000 line:500
+I said Bear is coming now!!!!
+This is legal,
+even though the line will likely not be within the video viewport.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup-bad.vtt
new file mode 100644
index 0000000000..4ff7add2d7
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup-bad.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+Cue text has invalid markup of , , ,  and .  Has a bad effect on the remainder of the cue.
+
+1
+00:00:00.000 --> 00:00:15.000 align:start position:20%
+The following bear starts bold but end is broken:
+Bear is Coming!!!!!
+
+00:00:15.500 --> 00:00:30.500 align:start position:20%
+The following bear is not in italics but the markup is removed:
+< i>Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+The following bear is not underlined and markup is removed:
+I said < u >Bear is coming!!!!
+
+3
+00:01:01.000 --> 00:01:30.000 align:start position:20%
+The following bear is not ruby annotated and markup is removed:
+I said Bearbear with me is coming!!!!
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup.vtt
new file mode 100644
index 0000000000..252a599b5f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+Cues with , , ,  and  tags (all valid).
+
+1
+00:00:00.000 --> 00:00:15.000 align:start position:20%
+The following bear is bold:
+Bear is Coming!!!!!
+
+00:00:15.500 --> 00:00:30.500 align:start position:20%
+The following bear is in italics and has a class of "larger":
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+The following bear is underlined even though the element has a blank:
+I said Bear is coming!!!!
+
+3
+00:01:01.000 --> 00:01:30.000 align:start position:20%
+The following bear is ruby annotated:
+I said Bearbear with me is coming!!!!
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata-area.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata-area.vtt
new file mode 100644
index 0000000000..255298aeb0
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata-area.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+This is where metadata would go and these lines should be skipped.
+author = silviapf@google.com
+COMMENT-->
+this is a comment, that will parse as part of the header;
+the STYLE and DEFAULTS below are parsed as invalid cues
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:20:00.500
+I said Bear is coming!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata.vtt
new file mode 100644
index 0000000000..03d8cf4a1c
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata.vtt
@@ -0,0 +1,38 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.000
+Lorem ipsum dolor sit amet,
+
+00:00:02.000 --> 00:00:03.000
+consectetuer adipiscing elit,
+
+00:00:04.000 --> 00:00:05.000
+sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
+
+00:00:06.000 --> 00:00:07.000
+Ut wisi enim ad minim veniam,
+
+00:00:08.000 --> 00:00:09.000
+quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
+
+00:00:10.000 --> 00:00:11.000
+Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat,
+
+00:00:12.000 --> 00:00:13.000
+vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio
+
+00:00:14.000 --> 00:00:15.000
+dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.
+
+00:00:16.000 --> 00:00:17.000
+Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id
+
+00:00:18.000 --> 00:00:19.000
+quod mazim placerat facer possim assum.
+
+00:00:20.000 --> 00:00:21.000
+Typi non habent claritatem insitam;
+
+00:00:22.000 --> 00:00:23.000
+est usus legentis in iis qui facit eorum claritatem.
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/missed-cues.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/missed-cues.vtt
new file mode 100644
index 0000000000..36e8366e90
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/missed-cues.vtt
@@ -0,0 +1,31 @@
+WEBVTT
+Events should be triggered for missed (skipped) cues during normal playback.
+
+1
+00:00:00.000 --> 00:00:01.500 align:start position:20%
+Bear is Coming!!!!!
+And what kind of a bear it is - just have look.
+
+2
+00:00:02.000 --> 00:00:02.500 align:start position:20%
+I said Bear is coming!!!!
+
+3
+00:00:05.500 --> 00:00:05.501 align:start position:20%
+I said Bear is coming now!!!!
+
+4
+00:00:05.700 --> 00:00:05.701 align:start position:20%
+This is the second missed cue in the test.
+
+5
+00:00:05.800 --> 00:00:05.800 align:start position:20%
+Third missed cue - zero-length cue.
+
+6
+00:00:05.850 --> 00:00:05.851 align:start position:20%
+Fourth missed cue.
+
+7
+00:00:05.950 --> 00:00:01.100
+Negative length cue. Should be treated correctly.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-newline-at-eof.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-newline-at-eof.vtt
new file mode 100644
index 0000000000..49e4e9051a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-newline-at-eof.vtt
@@ -0,0 +1,6 @@
+WEBVTT
+A file with no line terminator at the end should be fine (last cue should be recognized).
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-timings.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-timings.vtt
new file mode 100644
index 0000000000..4cb85b6df2
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-timings.vtt
@@ -0,0 +1,13 @@
+WEBVTT
+Cues without timings are ignored.
+
+1
+00:00:00.000
+Bear is Coming!!!!!
+
+2
+00h:00m:31s.000ms
+I said Bear is coming!!!!
+
+3
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-webvtt.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-webvtt.vtt
new file mode 100644
index 0000000000..12053b2703
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-webvtt.vtt
@@ -0,0 +1,10 @@
+AWEBVTT FILE
+A file with wrong file header should not be recognized as a webvtt file.
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:20:00.500
+I said Bear is coming!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-bad.vtt
new file mode 100644
index 0000000000..58ca6792be
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-bad.vtt
@@ -0,0 +1,39 @@
+WEBVTT
+Invalid horizontal positioning values (all settings are ignored).
+
+1
+00:00:00.000 --> 00:00:15.500 position:-5%
+Bear is Coming!!!!!
+This would be off screen -> ignored.
+
+00:00:16.000 --> 00:00:30.500 position:150%
+Bear is Coming!!!!!
+This would be off screen -> ignored.
+
+2
+00:00:31.000 --> 00:00:45.500 position:50
+I said Bear is coming!!!!
+Missing percent sign -> ignored.
+
+2
+00:00:46.000 --> 00:01:00.500 position:50a%
+I said Bear is coming!!!!
+Surplus character between number and percent sign -> ignored.
+
+3
+00:01:01.000 --> 00:01:30.500 position:100%-fj
+I said Bear is coming now!!!!
+Surplus characters after percent sign -> ignored.
+
+
+00:01:31.000 --> 00:02:00.500 position:100asdf
+I said Bear is coming now!!!!
+Surplus characters and no percent sign -> ignored.
+
+00:02:01.000 --> 00:02:02.000 position:e50%
+I said Bear is coming now!!!!
+Surplus characters at beginning of size string -> ignored.
+
+00:02:02.100 --> 00:02:02.500 position:5g0%
+I said Bear is coming now!!!!
+Surplus characters in middle of size string -> ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-ltr.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-ltr.vtt
new file mode 100644
index 0000000000..b23a7446b7
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-ltr.vtt
@@ -0,0 +1,21 @@
+WEBVTT
+Valid horizontal positioning values.
+
+1
+00:00:00.000 --> 00:00:30.500 position:0%
+الدب قادم!!!!!
+تحديد المواقع في أسفل اليمين.
+
+2
+00:00:31.000 --> 00:00:45.500 position:50%
+قلت الدب قادم!!
+تحديد المواقع في منتصف القاع.
+
+00:00:46.000 --> 00:01:00.500
+قلت الدب قادم!!
+المواقع الافتراضية على منتصف أسفل تزال قائمة.
+
+3
+00:01:01.000 --> 00:02:00.500 position:100%
+قلت الدب قادم الآن!!
+غادر لتحديد المواقع في القاع.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning.vtt
new file mode 100644
index 0000000000..ccf6024da0
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning.vtt
@@ -0,0 +1,21 @@
+WEBVTT
+Valid horizontal positioning values.
+
+1
+00:00:00.000 --> 00:00:30.500 position:0%
+Bear is Coming!!!!!
+Positioning on the left bottom.
+
+2
+00:00:31.000 --> 00:00:45.500 position:50%
+I said Bear is coming!!!!
+Positioning on the bottom middle.
+
+00:00:46.000 --> 00:01:00.500
+I said Bear is coming!!!!
+Default positioning on the bottom middle still.
+
+3
+00:01:01.000 --> 00:02:00.500 position:100%
+I said Bear is coming now!!!!
+Positioning on the bottom right.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings-bad-separation.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings-bad-separation.vtt
new file mode 100644
index 0000000000..cbfe6ea6e9
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings-bad-separation.vtt
@@ -0,0 +1,20 @@
+WEBVTT
+Cues settings may only be separated by spaces or tabs, but illegal characters
+between settings are ignored.
+
+1
+00:00:00.000 --> 00:00:30.500 - line:43% position:10% -
+Bear is Coming!!!!! Bad separator ignored.
+
+2
+00:00:31.000 --> 00:01:00.500 --> position:50% Vertical:lr align:end
+I said Bear is coming!!!! Bad separator and setting ignored.
+
+3
+00:01:01.000 --> 00:02:00.500  
+I said Bear is coming now!!!! Bad setting markup. Not ignored because the settings are
+not delimited by spaces or tabs.
+
+4
+00:02:01.000 --> 100:20:00.500 / vertical:lr | position:90%
+I said Bear is coming now!!!! Bad separator ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings.vtt
new file mode 100644
index 0000000000..dd6b02296a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+Cue settings may be separated by spaces or tabs.
+
+1
+00:00:00.000 --> 00:00:30.500 line:100% align:start
+Bear is Coming!!!!! One blank.
+
+2
+00:00:31.000 --> 00:01:00.500   position:40% vertical:rl line:15%
+I said Bear is coming!!!! Several blanks.
+
+3
+00:01:01.000 --> 00:02:00.500	align:middle position:10%
+I said Bear is coming now!!!! Tab separator.
+
+4
+00:02:01.000 --> 100:20:00.500		line:95%	vertical:lr align:end
+I said Bear is coming now!!!! Tab separators.
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/simple-captions.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/simple-captions.vtt
new file mode 100644
index 0000000000..9815b111da
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/simple-captions.vtt
@@ -0,0 +1,17 @@
+WEBVTT
+
+0
+00:00:04.000 --> 00:00:04.500
+First cue
+
+1
+00:00:04.500 --> 00:00:05.000
+Lorem
+
+2
+00:00:05.000 --> 00:00:05.500
+ipsum
+
+3
+00:00:05.500 --> 00:00:05.501
+Missed cue with pause-on-exit
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/sorted-dispatch.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/sorted-dispatch.vtt
new file mode 100644
index 0000000000..438ea6abf9
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/sorted-dispatch.vtt
@@ -0,0 +1,34 @@
+WEBVTT
+Enter and exit events should be dispatched in a sorted order according to their times.
+
+0
+00:00:04.000 --> 00:00:04.500
+Missed cue that should not be considered because of seeking.
+
+1
+00:00:05.100 --> 00:00:05.800 align:start position:20%
+Bear is Coming!!!!!
+
+2
+00:00:05.100 --> 00:00:05.101
+Missed cue 1
+
+3
+00:00:05.100 --> 00:00:05.301
+And what kind of a bear it is - just have look.
+
+4
+00:00:05.100 --> 00:00:05.101
+Missed Cue 2
+
+5
+00:00:05.300 --> 00:00:05.800 align:start position:20%
+I said Bear is coming!!!!
+
+6
+00:00:05.990 --> 00:00:05.993 align:start position:20%
+I said Bear is coming now!!!!
+
+7
+00:00:05.994 --> 00:00:05.998 align:start position:20%
+Bear is already here
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp-bad.vtt
new file mode 100644
index 0000000000..4479cdb722
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp-bad.vtt
@@ -0,0 +1,17 @@
+WEBVTT
+Invalid  markup.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+This <00:00:05.000>cue <00:00:10.000>is <00:00:12.000>painted <00:00:08.000>on.
+But since the last two timestamps are out of order, they are ignored.
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+I <00:00:20.000>said <00:00:22.000>Bear <00:00:24.000>is <00:00:26.000>coming!!!!
+All of these timestamps are before the start of the cue, so get ignored.
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+I <00:02:05.000>said <00:02:10.000>Bear <00:02:15.000>is <00:02:20.000>coming <00:02:25.000>now!!!!
+All of these timestamps are after the end of the cue, so get ignored.
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp.vtt
new file mode 100644
index 0000000000..17d464bfed
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Paint-on text in cues with  markup.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+This <00:00:05.000>cue <00:00:10.000>is <00:00:15.000>painted <00:00:20.000>on.
+
+2
+00:00:31.000 --> 00:01:00.500 align:start position:20%
+I <00:00:35.000>said <00:00:40.000>Bear <00:00:45.000>is <00:00:50.000>coming!!!!
+
+3
+00:01:01.000 --> 00:02:00.500 align:start position:20%
+I <00:01:05.000>said <00:01:10.000>Bear <00:01:15.000>is <00:01:20.000>coming <00:01:25.000>now!!!!
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour-error.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour-error.vtt
new file mode 100644
index 0000000000..c33f8a96c3
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour-error.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+These timings all have errors and all cues should be ignored.
+
+1
+00:00.00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:01:00:500
+I said Bear is coming!!!!
+
+3
+00:01:01.000 --> 00:120:00.500
+I said Bear is coming now!!!!
+
+4
+00:02:01.000 - 00:03:00.500
+I said Bear is coming now!!!!
+
+5
+00h:03m:01s.000ms --> 00h:03m:00s.500ms
+I said Bear is coming now!!!!
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour.vtt
new file mode 100644
index 0000000000..b708b83338
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour.vtt
@@ -0,0 +1,14 @@
+WEBVTT
+Timings can optionally contain an hour.
+
+1
+00:00:00.000 --> 00:00:30.500
+Bear is Coming!!!!!
+
+2
+00:00:31.000 --> 00:01:00.500
+I said Bear is coming!!!!
+
+3
+00:01:01.000 --> 100:20:00.500
+I said Bear is coming now!!!!
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour-errors.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour-errors.vtt
new file mode 100644
index 0000000000..e4bf27d4e6
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour-errors.vtt
@@ -0,0 +1,22 @@
+WEBVTT
+These timings all have errors and all cues should be ignored.
+
+1
+00.00.000 --> 00:30.500
+Bear is Coming!!!!!
+
+2
+00:31.000 --> 01:00:500
+I said Bear is coming!!!!
+
+3
+01:01.000 --> 120:00.500
+I said Bear is coming now!!!!
+
+4
+01:01.000 - 02:00.500
+I said Bear is coming now!!!!
+
+5
+02:01.000 --> 03m:00.500
+I said Bear is coming now!!!!
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour.vtt
new file mode 100644
index 0000000000..745c34ff9f
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour.vtt
@@ -0,0 +1,18 @@
+WEBVTT
+The hour of a timestamp is optional.
+
+1
+00:00.000 --> 00:30.500
+Bear is Coming!!!!!
+
+2
+00:31.000 --> 01:00.500
+I said Bear is coming!!!!
+
+3
+01:01.000 --> 02:00.500
+I said Bear is coming now!!!!
+
+4
+02:01.000	-->	03:00.500
+tab separators
\ No newline at end of file
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-whitespace.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-whitespace.vtt
new file mode 100644
index 0000000000..9d9ac9a38a
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-whitespace.vtt
@@ -0,0 +1,51 @@
+WEBVTT
+Whitespace (U+0020, U+0009, U+000C) surrounding cue-timings separator ("-->") is optional
+
+1
+00:00:00.100 -->00:00:01.500
+Single U+0020 SPACE left of cue-timings separator
+
+2
+00:00:00.100--> 00:00:01.500
+Single U+0020 SPACE right of cue-timings separator
+
+3
+00:00:00.100	-->00:00:01.500
+Single U+0009 TAB left of cue-timings separator
+
+4
+00:00:00.100-->	00:00:01.500
+Single U+0009 TAB right of cue-timings separator
+
+5
+00:00:00.100-->00:00:01.500
+Single U+000C FORM FEED left of cue-timings separator
+
+6
+00:00:00.100-->00:00:01.500
+Single U+000C FORM FEED right of cue-timings separator
+
+7
+00:00:00.100   -->00:00:01.500
+Several U+0020 SPACE left of cue-timings separator
+
+8
+00:00:00.100-->   00:00:01.500
+Several U+0020 SPACE right of cue-timings separator
+
+9
+00:00:00.100			-->00:00:01.500
+Several U+0009 TAB left of cue-timings separator
+
+10
+00:00:00.100-->			00:00:01.500
+Several U+0009 TAB right of cue-timings separator
+
+11
+00:00:00.100-->00:00:01.500
+Several U+000C FORM FEED left of cue-timings separator
+
+12
+00:00:00.100-->00:00:01.500
+Several U+000C FORM FEED right of cue-timings separator
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt
new file mode 100644
index 0000000000..9eaf3d31e4
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt
@@ -0,0 +1,4 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.000
+German
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt
new file mode 100644
index 0000000000..4241f35b56
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt
@@ -0,0 +1,4 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.000
+English
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt
new file mode 100644
index 0000000000..5523224e0d
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt
@@ -0,0 +1,4 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.000
+french
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt
new file mode 100644
index 0000000000..c916c0983b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt
@@ -0,0 +1,4 @@
+WEBVTT
+
+00:00:00.000 --> 00:00:01.000
+test
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/unsupported-markup.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/unsupported-markup.vtt
new file mode 100644
index 0000000000..b4ea7ea09b
--- /dev/null
+++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/unsupported-markup.vtt
@@ -0,0 +1,23 @@
+WEBVTT
+Any HTML markup that is not supported should be ignored.
+
+1
+00:00:00.000 --> 00:00:30.500 align:start position:20%
+

Bear is Coming!!!!!

+

And what kind of a bear it is - just have look.

+ +2 +00:00:31.000 --> 00:01:00.500 align:start position:20% +
    +
  • I said Bear is coming!!!!
  • +
  • I said Bear is still coming!!!!
  • +
+ + +3 +00:01:01.000 --> 00:02:00.500 align:start position:20% +
    +
  1. I said Bear is coming now!!!!
  2. +
  3. mighty bear
  4. +
  5. +
\ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/utf8.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/utf8.vtt new file mode 100644 index 0000000000..8dd8f27948 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/utf8.vtt @@ -0,0 +1,10 @@ +WEBVTT +UTF-8 encoded characters should be recognized. + +1 +00:00:00.000 --> 00:00:30.500 +景気判断 + +2 +00:00:31.000 --> 00:20:00.500 +電力不足 \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-bad.vtt new file mode 100644 index 0000000000..8e7b3b738d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-bad.vtt @@ -0,0 +1,17 @@ +WEBVTT +Invalid vertical direction settings (all settings are ignored). + +1 +00:00:00.000 --> 00:00:30.500 vertical:#vertical +Bear is Coming!!!!! +Normal rendering - direction setting is ignored. + +2 +00:00:31.000 --> 00:01:00.500 vertical:verticallr +I said Bear is coming!!!! +Normal rendering - direction setting is ignored. + +3 +00:01:01.000 --> 00:02:00.500 vertical:vertical-rl +I said Bear is coming now!!!! +Normal rendering - direction setting is ignored. diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-ltr.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-ltr.vtt new file mode 100644 index 0000000000..74838369d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-ltr.vtt @@ -0,0 +1,20 @@ +WEBVTT +Valid vertical direction settings. + +1 +00:00:00.000 --> 00:00:30.500 vertical:rl +الدب قادم!!!!! +يجعل على الجانب الأيمن من المعاينة الفيديو والمتوسطة الانحياز ، +أسفل إلى أعلى، وتزايد اليسار. + +2 +00:00:31.000 --> 00:01:00.500 vertical:lr +قلت الدب قادم!! +يجعل على الجانب الأيسر من المعاينة الفيديو والمتوسطة الانحياز ، +أسفل إلى أعلى، وتنامي اليمين. + +3 +00:01:01.000 --> 00:02:00.500 vertical:rl align:start position:0% +قلت الدب قادم الآن!! +يجعل على الجانب الأيمن من المعاينة الفيديو ، على حد سواء أسفل محاذاة +لمربع جديلة والنص داخل النص ، من أسفل إلى أعلى، وتزايد اليسار. diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign.vtt new file mode 100644 index 0000000000..f757a365e3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign.vtt @@ -0,0 +1,20 @@ +WEBVTT +Valid vertical direction settings. + +1 +00:00:00.000 --> 00:00:30.500 vertical:rl +Bear is Coming!!!!! +Renders on the right side of the video viewport, middle aligned, +top to bottom, growing left. + +2 +00:00:31.000 --> 00:01:00.500 vertical:lr +I said Bear is coming!!!! +Renders on the left side of the video viewport, middle aligned, +top to bottom, growing right. + +3 +00:01:01.000 --> 00:02:00.500 vertical:rl align:start position:0% +I said Bear is coming now!!!! +Renders on the right side of the video viewport, top aligned both +for the cue box and the text within, text from top to bottom, growing left. diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice-bad.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice-bad.vtt new file mode 100644 index 0000000000..12ffdeb82e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice-bad.vtt @@ -0,0 +1,17 @@ +WEBVTT +Invalid voice markup. + +1 +00:00:00.000 --> 00:00:30.500 align:start position:20% +< v Speaker>Bear is Coming!!!!! +This is two annotations for an empty tag. + +2 +00:00:31.000 --> 00:01:00.500 align:start position:20% +I said Bear is coming!!!! +This does not parse as a voice tag. + +3 +00:01:01.000 --> 00:02:00.500 align:start position:20% +I said Bear is coming now!!!! +This does not parse as a voice tag. diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice.vtt new file mode 100644 index 0000000000..d6cfc6887f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice.vtt @@ -0,0 +1,15 @@ +WEBVTT +Cue text fragment with voice markup mapped to HTML element with @title for annotation. + +1 +00:00:00.000 --> 00:00:30.500 align:start position:20% +Bear is Coming!!!!! +Text span with a class and an annotation. + +2 +00:00:31.000 --> 00:01:00.500 align:start position:20% +I said Bear is coming!!!! + +3 +00:01:01.000 --> 00:02:00.500 align:start position:20% +I said Bear is coming now!!!! diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/vp8-vorbis-webvtt.webm b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/vp8-vorbis-webvtt.webm new file mode 100644 index 0000000000..c626f86e33 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/vp8-vorbis-webvtt.webm differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-file.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-file.vtt new file mode 100644 index 0000000000..0c1a5fb158 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-file.vtt @@ -0,0 +1,9 @@ +WEBVTT FILE + +1 +00:00:00.000 --> 00:00:30.500 +Bear is Coming!!!!! + +2 +00:00:31.000 --> 00:20:00.500 +I said Bear is coming!!!! \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-rubbish.vtt b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-rubbish.vtt new file mode 100644 index 0000000000..dacc215409 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-rubbish.vtt @@ -0,0 +1,10 @@ +WEBVTT asdfasdfauhio +Rubbish after the WEBVTT header should be ignored. + +1 +00:00:00.000 --> 00:00:30.500 +Bear is Coming!!!!! + +2 +00:00:31.000 --> 00:20:00.500 +I said Bear is coming!!!! \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html new file mode 100644 index 0000000000..3ba8c9db88 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html @@ -0,0 +1,52 @@ + +track element changing "track URL" and clearing cues + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-empty-string.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-empty-string.html new file mode 100644 index 0000000000..27c76b6be4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/src-empty-string.html @@ -0,0 +1,21 @@ + +Setting HTMLTrackElement.src to the empty string fires 'error' and sets readyState to ERROR + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html new file mode 100644 index 0000000000..a7c08a2e3e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html @@ -0,0 +1,42 @@ + +Ensure that no text track cues are active after the video is unloaded + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html new file mode 100644 index 0000000000..e738964001 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html @@ -0,0 +1,92 @@ + +TextTrack's addCue and removeCue + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track.html new file mode 100644 index 0000000000..c924c92da9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track.html @@ -0,0 +1,34 @@ + +'addtrack' event is fired when a TextTrack is created + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind.html new file mode 100644 index 0000000000..d058bf2987 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind.html @@ -0,0 +1,25 @@ + +addTextTrack() only accepts known "kind" values + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html new file mode 100644 index 0000000000..b2840d235a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html @@ -0,0 +1,36 @@ + + + +Track element - text tracks API test + + + + + + +

Track element and API Test

+
+ +
+
+ + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event.html new file mode 100644 index 0000000000..7a17dee2a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event.html @@ -0,0 +1,21 @@ + +A 'change' event is fired when a TextTrack's mode changes + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class.html new file mode 100644 index 0000000000..d18f8b55cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty.html new file mode 100644 index 0000000000..59f8fc6c7b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty.html @@ -0,0 +1,19 @@ + +Invoke getCueAsHTML() on an empty cue + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline.html new file mode 100644 index 0000000000..3b4c3542a9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline.html @@ -0,0 +1,16 @@ + +Add a track and change its mode through JS + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable-fragment.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable-fragment.html new file mode 100644 index 0000000000..713e781996 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable-fragment.html @@ -0,0 +1,85 @@ + +Cue fragment is mutable + + + + + +

Fragment 1

+
+

Fragment 2

+
\ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable.html new file mode 100644 index 0000000000..26a6b84f8a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable.html @@ -0,0 +1,99 @@ + +Modifying attributes of a VTTCue + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration.html new file mode 100644 index 0000000000..e2f78900a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration.html @@ -0,0 +1,30 @@ + +Enter, Exit events for a cue with negative duration + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events.html new file mode 100644 index 0000000000..ebd7877f78 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events.html @@ -0,0 +1,32 @@ + +Enter, Exit events for cues with negative timestamps + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp.html new file mode 100644 index 0000000000..5dc54ed25b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp.html @@ -0,0 +1,42 @@ + +Negative timestamps + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-order.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-order.html new file mode 100644 index 0000000000..58e11ebe70 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-order.html @@ -0,0 +1,83 @@ + +Text track cue order + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added-ref.html new file mode 100644 index 0000000000..bd43c462dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added-ref.html @@ -0,0 +1,31 @@ + + + +Text track cue layout after controls are added (reference) + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html new file mode 100644 index 0000000000..23c27e418e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html @@ -0,0 +1,37 @@ + + + + +Text track cue layout after controls are added + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed-ref.html new file mode 100644 index 0000000000..96afaef346 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed-ref.html @@ -0,0 +1,29 @@ + + + +Text track cue layout after controls are removed (reference) + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed.html new file mode 100644 index 0000000000..76019c9b41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed.html @@ -0,0 +1,34 @@ + + + + +Text track cue layout after controls are removed + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html new file mode 100644 index 0000000000..427189f6fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html @@ -0,0 +1,16 @@ + +Empty cues + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html new file mode 100644 index 0000000000..8354041eb2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html @@ -0,0 +1,32 @@ + + + + +
+ +
PAS
+
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html new file mode 100644 index 0000000000..d3dcee1037 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html @@ -0,0 +1,32 @@ + + + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html new file mode 100644 index 0000000000..39461350b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html @@ -0,0 +1,35 @@ + + + + +
+ +
XXX
+
+ \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html new file mode 100644 index 0000000000..69ca92e845 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html @@ -0,0 +1,28 @@ + + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange-dynamically-created-track-element.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange-dynamically-created-track-element.html new file mode 100644 index 0000000000..f990bc8c72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange-dynamically-created-track-element.html @@ -0,0 +1,28 @@ + +'cuechange' event on dynamically created track element + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html new file mode 100644 index 0000000000..2593401771 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html @@ -0,0 +1,41 @@ + +TextTrack's cues are indexed and updated in order during video playback + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-exit.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-exit.html new file mode 100644 index 0000000000..2d49c21178 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-exit.html @@ -0,0 +1,44 @@ + +TextTrack's cues are indexed and updated in order during video playback + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-seeking.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-seeking.html new file mode 100644 index 0000000000..ae56e16205 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-seeking.html @@ -0,0 +1,38 @@ + +TextTrack's cue onenter handler called when seeked onto + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html new file mode 100644 index 0000000000..2acae212d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html @@ -0,0 +1,59 @@ + +Events are triggered for missed (skipped) cues during normal playback + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-pause-on-exit.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-pause-on-exit.html new file mode 100644 index 0000000000..eaf7e2a1d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-pause-on-exit.html @@ -0,0 +1,35 @@ + +Video is paused after cues having pause-on-exit flag are processed + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-seeking.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-seeking.html new file mode 100644 index 0000000000..99cd2d550e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-seeking.html @@ -0,0 +1,31 @@ + +TextTrack's activeCues are indexed and updated during video playback + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-sorted-before-dispatch.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-sorted-before-dispatch.html new file mode 100644 index 0000000000..edc202f435 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-sorted-before-dispatch.html @@ -0,0 +1,48 @@ + +All events are triggered in chronological order + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-data-url.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-data-url.html new file mode 100644 index 0000000000..26ff90d56d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-data-url.html @@ -0,0 +1,30 @@ + +track element data: URL + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-default-attribute.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-default-attribute.html new file mode 100644 index 0000000000..3e8c547fc3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-default-attribute.html @@ -0,0 +1,26 @@ + +A track with the "default" attribute loads automatically + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup.html new file mode 100644 index 0000000000..ce9f73335a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup.html @@ -0,0 +1,29 @@ + +Track deletion during setup + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled-addcue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled-addcue.html new file mode 100644 index 0000000000..038e6f6ba7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled-addcue.html @@ -0,0 +1,33 @@ + +Adding cues to a disabled text track + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled.html new file mode 100644 index 0000000000..d517b9d12c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled.html @@ -0,0 +1,28 @@ + +Disabling a track + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change.html new file mode 100644 index 0000000000..ff447f33f2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change.html @@ -0,0 +1,16 @@ + +Simple DOM mutations with track element + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-aborted-load.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-aborted-load.html new file mode 100644 index 0000000000..234e087313 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-aborted-load.html @@ -0,0 +1,19 @@ + +HTMLTrackElement 'src' attribute changed, load pending + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html new file mode 100644 index 0000000000..dd97d0522d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html @@ -0,0 +1,86 @@ + +HTMLTrackElement 'src' attribute mutations + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html new file mode 100644 index 0000000000..f3c78668b4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html @@ -0,0 +1,55 @@ + +HTMLTrackElement 'src' attribute mutations + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js new file mode 100644 index 0000000000..09c85dd7bc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js @@ -0,0 +1,83 @@ +function enableAllTextTracks(textTracks) { + for (var i = 0; i < textTracks.length; i++) { + var track = textTracks[i]; + if (track.mode == "disabled") + track.mode = "hidden"; + } +} + +function assert_cues_equal(cues, expected) { + assert_equals(cues.length, expected.length); + for (var i = 0; i < cues.length; i++) { + assert_equals(cues[i].id, expected[i].id); + assert_equals(cues[i].startTime, expected[i].startTime); + assert_equals(cues[i].endTime, expected[i].endTime); + assert_equals(cues[i].text, expected[i].text); + } +} + +function assert_cues_match(cues, expected) { + assert_equals(cues.length, expected.length); + for (var i = 0; i < cues.length; i++) { + var cue = cues[i]; + var expectedItem = expected[i]; + for (var property of Object.getOwnPropertyNames(expectedItem)) + assert_equals(cue[property], expectedItem[property]); + } +} + +function assert_cues_html_content(cues, expected) { + assert_equals(cues.length, expected.length); + for (var i = 0; i < cues.length; i++) { + var expectedItem = expected[i]; + var property = Object.getOwnPropertyNames(expectedItem)[0]; + var propertyValue = expectedItem[property]; + assert_equals(propertyValue(cues[i]), expectedItem.expected); + } +} + +function check_cues_from_track(src, func) { + async_test(function(t) { + var video = document.createElement("video"); + var trackElement = document.createElement("track"); + trackElement.src = src; + trackElement.default = true; + video.appendChild(trackElement); + + trackElement.onload = t.step_func_done(function() { + func(trackElement.track); + }); + }, "Check cues from " + src); +} + +function assert_cue_fragment(cue, children) { + var fragment = createFragment(children); + assert_true(fragment.isEqualNode(cue.getCueAsHTML())); +} + +function assert_cue_fragment_as_textcontent(cue, children) { + var fragment = createFragment(children); + assert_equals(cue.getCueAsHTML().textContent, fragment.textContent); +} + +function createFragment(children) { + var fragment = document.createDocumentFragment(); + cloneChildrenToFragment(fragment, children); + return fragment; +} + +function cloneChildrenToFragment(root, children) { + for (var child of children) { + var childElement; + if (child.type == "text") { + childElement = document.createTextNode(child.value); + } else { + childElement = document.createElement(child.type); + var styles = child.style || {}; + for (var attr of Object.getOwnPropertyNames(styles)) + childElement[attr] = styles[attr]; + cloneChildrenToFragment(childElement, child.value); + } + root.appendChild(childElement); + } +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-id.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-id.html new file mode 100644 index 0000000000..f0223fda64 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-id.html @@ -0,0 +1,25 @@ + +TextTrack "id" attribute + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-insert-after-load.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-insert-after-load.html new file mode 100644 index 0000000000..28b4f82688 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-insert-after-load.html @@ -0,0 +1,14 @@ + +Inserting a track element immediately after video load + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-large-timestamp.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-large-timestamp.html new file mode 100644 index 0000000000..bae1852cf8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-large-timestamp.html @@ -0,0 +1,19 @@ + +Very large timestamp is parsed correctly + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-error-readyState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-error-readyState.html new file mode 100644 index 0000000000..8e232bff53 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-error-readyState.html @@ -0,0 +1,15 @@ + +Error event on HTMLTrackElement and ERROR readyState on TextTrack + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-element-readyState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-element-readyState.html new file mode 100644 index 0000000000..62a68f6543 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-element-readyState.html @@ -0,0 +1,15 @@ + +Load event on HTMLTrackElement and LOADED readyState on TextTrack when src is set on the element + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState.html new file mode 100644 index 0000000000..e569eeb96f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState.html @@ -0,0 +1,20 @@ + +Load event on HTMLTrackElement and LOADED readyState on TextTrack when src is set from JavaScript + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-disabled.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-disabled.html new file mode 100644 index 0000000000..6b46bf4e34 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-disabled.html @@ -0,0 +1,34 @@ + +Cues are properly removed from the active cue list when their track changes mode to disabled + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html new file mode 100644 index 0000000000..3ec47a39e2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html @@ -0,0 +1,74 @@ + +A track appended after the initial track configuration does not change other tracks + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html new file mode 100644 index 0000000000..2e29d70469 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html @@ -0,0 +1,37 @@ + +A "metadata" track does not load automatically, but it does load when the mode is changed + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode.html new file mode 100644 index 0000000000..206ac9968f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode.html @@ -0,0 +1,76 @@ + +TextTrack mode attribute + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove.html new file mode 100644 index 0000000000..2708879424 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove.html @@ -0,0 +1,36 @@ + +Add and remove track node + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-active-cue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-active-cue.html new file mode 100644 index 0000000000..176e0065c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-active-cue.html @@ -0,0 +1,35 @@ + +Removing an active cue + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-by-setting-innerHTML.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-by-setting-innerHTML.html new file mode 100644 index 0000000000..95929bc83f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-by-setting-innerHTML.html @@ -0,0 +1,31 @@ + +Removing a track by setting video.innerHTML doesn't crash + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-insert-ready-state.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-insert-ready-state.html new file mode 100644 index 0000000000..91375f579e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-insert-ready-state.html @@ -0,0 +1,38 @@ + +Attaching a media element again to the document, having a child track that failed loading doesn't block video from playing + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly.html new file mode 100644 index 0000000000..4be040c5f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly.html @@ -0,0 +1,14 @@ + +Removing a track element before it has been processed doesn't crash + + + +
+ \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-inband.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-inband.html new file mode 100644 index 0000000000..7dcfe68318 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-inband.html @@ -0,0 +1,79 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track.html new file mode 100644 index 0000000000..d5695cd302 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track.html @@ -0,0 +1,39 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata.html new file mode 100644 index 0000000000..c4d88a35f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata.html @@ -0,0 +1,33 @@ + +Multiple 'metadata' tracks with 'default' + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html new file mode 100644 index 0000000000..522d067adf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html @@ -0,0 +1,36 @@ + +HTMLTrackElement Text Track Selection Task Order + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html new file mode 100644 index 0000000000..73241ce0d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html @@ -0,0 +1,29 @@ + +TextTrackCueList functionality: length, operator[], and getCueById() + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks.html new file mode 100644 index 0000000000..4d006fcefb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks.html @@ -0,0 +1,44 @@ + +TextTracks in a TextTrackList are kept in the correct order + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning.html new file mode 100644 index 0000000000..07ebfd622b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning.html @@ -0,0 +1,52 @@ + +Cue text position and alignment from settings + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position.html new file mode 100644 index 0000000000..deb389916a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position.html @@ -0,0 +1,54 @@ + +Cue alignment, line and text position from settings + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-alignment.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-alignment.html new file mode 100644 index 0000000000..e8f47e876a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-alignment.html @@ -0,0 +1,31 @@ + +Cue alignment from settings + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-blank-lines.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-blank-lines.html new file mode 100644 index 0000000000..114aebc38c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-blank-lines.html @@ -0,0 +1,26 @@ + +Cues are affected neither by multiple newlines \n, \r, and \r\n nor by the absence of a seperating line + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-bom.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-bom.html new file mode 100644 index 0000000000..c138f96af5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-bom.html @@ -0,0 +1,34 @@ + +Parser properly ignores a UTF-8 BOM character at the beginning of a file and all other cues are properly parsed + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-class-markup.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-class-markup.html new file mode 100644 index 0000000000..ecc5a57497 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-class-markup.html @@ -0,0 +1,56 @@ + +Tests cues with class markup <c>. + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-identifiers.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-identifiers.html new file mode 100644 index 0000000000..02b0a15187 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-identifiers.html @@ -0,0 +1,27 @@ + +Any text other than "-->" is recognized as optional cue identifier + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-no-id.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-no-id.html new file mode 100644 index 0000000000..b2f4b77083 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-no-id.html @@ -0,0 +1,19 @@ + +Empty cue identifiers, but having "-->" leads to discarded cue + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-recovery.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-recovery.html new file mode 100644 index 0000000000..6a104916b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-recovery.html @@ -0,0 +1,19 @@ + +A cue is recovered when a line with a "-->" is encountered without blank line separator + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size-align.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size-align.html new file mode 100644 index 0000000000..a1243a95e7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size-align.html @@ -0,0 +1,26 @@ + +Cue size and alignment from settings + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size.html new file mode 100644 index 0000000000..d8e03edce7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size.html @@ -0,0 +1,26 @@ + +Cue size from settings + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-degenerate-cues.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-degenerate-cues.html new file mode 100644 index 0000000000..8d2569993c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-degenerate-cues.html @@ -0,0 +1,16 @@ + +Degenerate cues without separating blank lines + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-empty-cue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-empty-cue.html new file mode 100644 index 0000000000..e1f5570250 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-empty-cue.html @@ -0,0 +1,10 @@ + +Empty cues should not be discarded + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-entities.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-entities.html new file mode 100644 index 0000000000..a5295795ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-entities.html @@ -0,0 +1,42 @@ + +Entities in the cue text + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment.html new file mode 100644 index 0000000000..f9b35576f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment.html @@ -0,0 +1,50 @@ + +Optional comment area under the "WEBVTT" file header is properly ignored and also, default settings and styling are currently ignored (treated as faulty cues) + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-interspersed-non-cue.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-interspersed-non-cue.html new file mode 100644 index 0000000000..2287cc2830 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-interspersed-non-cue.html @@ -0,0 +1,15 @@ + +An empty line after an identifier line discards the current cue and restarts the cue loop + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position.html new file mode 100644 index 0000000000..bea4acb917 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position.html @@ -0,0 +1,58 @@ + +Cue line position from settings + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header.html new file mode 100644 index 0000000000..ff4637a8a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header.html @@ -0,0 +1,57 @@ + +Magic file header "WEBVTT" leads to the file properly recognized as a WebVTT file + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-markup.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-markup.html new file mode 100644 index 0000000000..ceb05dd450 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-markup.html @@ -0,0 +1,90 @@ + +Cues with <b>, <i>, <u>, <rt> and <ruby> tags + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-newlines.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-newlines.html new file mode 100644 index 0000000000..4da7e6b1b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-newlines.html @@ -0,0 +1,26 @@ + +A cue with no newline at eof is parsed properly + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-no-timings.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-no-timings.html new file mode 100644 index 0000000000..a39a2c37aa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-no-timings.html @@ -0,0 +1,17 @@ + +Cue without timings are ignored + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines-ref.html new file mode 100644 index 0000000000..137a9334f2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines-ref.html @@ -0,0 +1,29 @@ + + +Reference test for track-webvtt-non-snap-to-lines.html + + + +
+ + Bear is Coming!!!!! +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines.html new file mode 100644 index 0000000000..ec350ff44d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines.html @@ -0,0 +1,24 @@ + + +Position is not adjusted for non snap-to-lines cues + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-positioning.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-positioning.html new file mode 100644 index 0000000000..d14a5768d3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-positioning.html @@ -0,0 +1,35 @@ + +Cue text position from settings + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-settings.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-settings.html new file mode 100644 index 0000000000..9ad98ffa1a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-settings.html @@ -0,0 +1,28 @@ + +WebVTT settings + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timestamp.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timestamp.html new file mode 100644 index 0000000000..e311f121f2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timestamp.html @@ -0,0 +1,36 @@ + +Cues with <timestamps> tags + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour.html new file mode 100644 index 0000000000..c03e182c79 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour.html @@ -0,0 +1,61 @@ + +Cue timings and various syntax errors in timings, with hours + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours.html new file mode 100644 index 0000000000..e81ae03cc2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours.html @@ -0,0 +1,67 @@ + +Cue timings and various syntax errors in timings, without hours + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-whitespace.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-whitespace.html new file mode 100644 index 0000000000..db1346d23a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-whitespace.html @@ -0,0 +1,25 @@ + +"Skip whitespace" step around cue-timings separator + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end-ref.html new file mode 100644 index 0000000000..1c8f751c2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end-ref.html @@ -0,0 +1,25 @@ + + +WebVTT two-cue layout after the first cue has ended (reference) + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html new file mode 100644 index 0000000000..df816ffe2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html @@ -0,0 +1,26 @@ + + +WebVTT two-cue layout after the first cue has ended + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-unsupported-markup.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-unsupported-markup.html new file mode 100644 index 0000000000..ed3107f89b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-unsupported-markup.html @@ -0,0 +1,37 @@ + +Unsupported markup is properly ignored + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8.html new file mode 100644 index 0000000000..eb44c85ba8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8.html @@ -0,0 +1,57 @@ + + +UTF-8 encoded characters are recognized properly and different encodings (iconv) are not recognized as a WebVTT file + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-valign.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-valign.html new file mode 100644 index 0000000000..ace0760740 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-valign.html @@ -0,0 +1,28 @@ + +Cue vertical alignment (direction) from settings + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-voice.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-voice.html new file mode 100644 index 0000000000..5df8b4057a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-voice.html @@ -0,0 +1,54 @@ + +Cues with voice markup <v> + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision.html new file mode 100644 index 0000000000..9cb5824279 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision.html @@ -0,0 +1,28 @@ + +Float precision of VTTCue attributes line, position and size + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/user-interface/muted.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/user-interface/muted.html new file mode 100644 index 0000000000..eb6d2ac688 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/user-interface/muted.html @@ -0,0 +1,169 @@ + +muted + + + + +
+ + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_controls_present-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_controls_present-manual.html new file mode 100644 index 0000000000..8e44951d7a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_controls_present-manual.html @@ -0,0 +1,14 @@ + + + + Video Test: video_controls_present.html + + + + + + +

Test passes if a controller user interface appears below and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_loop_base.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_loop_base.html new file mode 100644 index 0000000000..9b5d69b31a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_loop_base.html @@ -0,0 +1,40 @@ + + + + Video Test: video_loop_base + + + + + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_overriding_volume-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_overriding_volume-manual.html new file mode 100644 index 0000000000..6d770666cc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_overriding_volume-manual.html @@ -0,0 +1,21 @@ + + + + Video Test: video_muted_overriding_volume + + + + + + + +

Test passes if the video is playing without sound output and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_present-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_present-manual.html new file mode 100644 index 0000000000..bc80827775 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_muted_present-manual.html @@ -0,0 +1,20 @@ + + + + Video Test: video_muted_present + + + + + + + +

Test passes if the video is playing without sound output and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_check.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_check.html new file mode 100644 index 0000000000..1a45358a76 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_check.html @@ -0,0 +1,58 @@ + + + + Video Test: video_volume_check + + + + + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_loudest-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_loudest-manual.html new file mode 100644 index 0000000000..7475781201 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_loudest-manual.html @@ -0,0 +1,21 @@ + + + + Video Test: video_volume_loudest + + + + + + + +

Test passes if the video is playing with sound heard and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_silent-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_silent-manual.html new file mode 100644 index 0000000000..1768dd4d4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/video_volume_silent-manual.html @@ -0,0 +1,21 @@ + + + + Video Test: video_volume_silent + + + + + + + +

Test passes if the video is playing without sound heard and the text 'The user agent doesn't support media element.' does not appear anywhere on this page

+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/volume_nonfinite.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/volume_nonfinite.html new file mode 100644 index 0000000000..fce50c2e20 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/volume_nonfinite.html @@ -0,0 +1,18 @@ + + +Setting HTMLMediaElement.volume to non-finite numbers + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/resources/common.js b/testing/web-platform/tests/html/semantics/embedded-content/resources/common.js new file mode 100644 index 0000000000..06f18b3e04 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/resources/common.js @@ -0,0 +1,45 @@ +// Helper to access the element, its associated loading promise, and also to +// resolve the promise. +class ElementLoadPromise { + constructor(element_id) { + this.element_id = element_id; + this.promise = new Promise((resolve, reject) => { + this.resolve = resolve + this.reject = reject + }); + } + element() { + return document.getElementById(this.element_id); + } +} + +// Returns if the image is complete and the lazily loaded image matches the expected image. +function is_image_fully_loaded(image, expected_image) { + if (!image.complete || !expected_image.complete) { + return false; + } + + if (image.width != expected_image.width || + image.height != expected_image.height) { + return false; + } + + let canvas = document.createElement('canvas'); + canvas.width = image.width; + canvas.height = image.height; + let canvasContext = canvas.getContext("2d"); + canvasContext.save(); + canvasContext.drawImage(image, 0, 0); + let data = canvasContext.getImageData(0, 0, canvas.width, canvas.height).data; + + canvasContext.restore(); + canvasContext.drawImage(expected_image, 0, 0); + let expected_data = canvasContext.getImageData(0, 0, canvas.width, canvas.height).data; + + for (var i = 0; i < data.length; i++) { + if (data[i] != expected_data[i]) { + return false; + } + } + return true; +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html b/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html new file mode 100644 index 0000000000..a941511642 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html @@ -0,0 +1,3 @@ + + +I should not be embeddable because of X-Frame-Options diff --git a/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html.headers b/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html.headers new file mode 100644 index 0000000000..fa717cc748 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/resources/not-embeddable.html.headers @@ -0,0 +1 @@ +X-Frame-Options: deny diff --git a/testing/web-platform/tests/html/semantics/embedded-content/resources/should-load.html b/testing/web-platform/tests/html/semantics/embedded-content/resources/should-load.html new file mode 100644 index 0000000000..a9a178ce51 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/resources/should-load.html @@ -0,0 +1,3 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/resources/should-not-load.html b/testing/web-platform/tests/html/semantics/embedded-content/resources/should-not-load.html new file mode 100644 index 0000000000..6281b2da55 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/resources/should-not-load.html @@ -0,0 +1,5 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-coords.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-coords.html new file mode 100644 index 0000000000..9ec6f3e427 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-coords.html @@ -0,0 +1,47 @@ + + +HTMLAreaElement coords parsing + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-download-click.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-download-click.html new file mode 100644 index 0000000000..8100ada9d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-download-click.html @@ -0,0 +1,32 @@ + + +Clicking on an <area> element with a download attribute must not throw an exception + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-processing.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-processing.html new file mode 100644 index 0000000000..d1c3a83dd8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-processing.html @@ -0,0 +1,32 @@ + + +HTMLAreaElement processing + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-shape.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-shape.html new file mode 100644 index 0000000000..1ad0690f9e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-shape.html @@ -0,0 +1,36 @@ + + +HTMLAreaElement shape + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-stringifier.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-stringifier.html new file mode 100644 index 0000000000..3a661893d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/area-stringifier.html @@ -0,0 +1,16 @@ + +HTMLAreaElement stringifier + + + + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/resources/area-download-click.html b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/resources/area-download-click.html new file mode 100644 index 0000000000..c0679f8233 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/resources/area-download-click.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/support/hit-test.js b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/support/hit-test.js new file mode 100644 index 0000000000..82a98f1c35 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-area-element/support/hit-test.js @@ -0,0 +1,42 @@ +setup({explicit_done: true}); + +var img = document.getElementById('img'); +var area = document.getElementById('area'); + +var hitRect = [[area, 3, 3], [area, 9, 9], [img, 1, 3], [img, 3, 1], [img, 11, 9], [img, 9, 11], [img, 21, 41], [img, 101, 101]]; +var hitNone = [[img, 3, 3], [img, 9, 9], [img, 1, 3], [img, 3, 1], [img, 11, 9], [img, 9, 11], [img, 21, 41], [img, 101, 101]]; +var hitAll = [[area, 1, 1], [area, 1, 299], [area, 299, 1], [area, 299, 299], [area, 21, 41], [area, 101, 101]]; +var hitCircle = [[area, 11, 40], [area, 29, 40], [area, 20, 31], [area, 20, 49], [img, 12, 32], [img, 28, 48], [img, 101, 101]]; +var hitPoly = [[area, 101, 101], [area, 119, 101], [area, 101, 119], [img, 118, 118], [img, 3, 3], [img, 21, 41]]; +var hitStar = [[area, 101, 101], [area, 199, 101], [area, 150, 51], [img, 150, 125], [img, 3, 3], [img, 21, 41]]; + +var tests; +// The test file should have `tests` defined as follows: +// tests = [ +// {desc: string, shape: string?, coords: string?, hit: [[element, x, y], ...]}, +// ... +// ]; + +onload = function() { + tests.forEach(function(t) { + test(function(t_obj) { + if (t.shape === null) { + area.removeAttribute('shape'); + } else { + area.shape = t.shape; + } + if (area.coords === null) { + area.removeAttribute('coords'); + } else { + area.coords = t.coords; + } + t.hit.forEach(function(arr) { + var expected = arr[0]; + var x = arr[1]; + var y = arr[2]; + assert_equals(document.elementFromPoint(x, y), expected, 'elementFromPoint('+x+', '+y+')'); + }); + }, t.desc + ': ' + format_value(t.coords) + ' (' + t.shape + ')'); + }); + done(); +}; diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-appendChild-to-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-appendChild-to-inactive-document-crash.html new file mode 100644 index 0000000000..33d52ca899 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-appendChild-to-inactive-document-crash.html @@ -0,0 +1,6 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html new file mode 100644 index 0000000000..ade40797b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio-play-in-inactive-document-crash.html @@ -0,0 +1,8 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_001.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_001.htm new file mode 100644 index 0000000000..f455c68241 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_001.htm @@ -0,0 +1,18 @@ + + + + HTML5 Media Elements: Content inside the 'audio' element is not shown to the user (image). + + + + + + + +

Test passes if there is no red.

+
+ + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_002.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_002.htm new file mode 100644 index 0000000000..23b3ea188a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_002.htm @@ -0,0 +1,18 @@ + + + + HTML5 Media Elements: Content inside the 'audio' element is not shown to the user. + + + + + + + +

Test passes if there is no red.

+
+ + +
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html new file mode 100644 index 0000000000..c5b5b80ac1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html @@ -0,0 +1,56 @@ + + +Audio constructor + + +
+ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_content-ref.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_content-ref.htm new file mode 100644 index 0000000000..ef5964496d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-audio-element/audio_content-ref.htm @@ -0,0 +1,13 @@ + + + + HTML5 Media Elements: Content inside the 'audio' element is not shown to the user. + + + + +

Test passes if there is no red.

+
+
+ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html new file mode 100644 index 0000000000..5d35d4108c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html @@ -0,0 +1,47 @@ + +Options conversion for getContext("2d") + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-001.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-001.html new file mode 100644 index 0000000000..327c9f49d6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-001.html @@ -0,0 +1,39 @@ + + +Canvas descendants focusability + + + + +
+ + +
+
+ + +
+
+
+ + +
+
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-002.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-002.html new file mode 100644 index 0000000000..aa607365d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-002.html @@ -0,0 +1,39 @@ + + +Canvas descendants focusability + + + + +
+ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-003.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-003.tentative.html new file mode 100644 index 0000000000..cd42d1e6b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-003.tentative.html @@ -0,0 +1,48 @@ + + +Canvas descendants focusability + + + + + +
+ + + + +
+
+ + +
+
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-004.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-004.tentative.html new file mode 100644 index 0000000000..5d8dfcd2f4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-004.tentative.html @@ -0,0 +1,47 @@ + + +Canvas descendants focusability + + + + + +
+ +
+ +
+
+ + +
+
+
+ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-005.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-005.html new file mode 100644 index 0000000000..f3bee6b06b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/canvas-descendants-focusability-005.html @@ -0,0 +1,61 @@ + + +Canvas descendants focusability + + + + +
+ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html new file mode 100644 index 0000000000..eb4d69aed0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html @@ -0,0 +1,27 @@ + + +Canvas test: context.arguments.missing + + + + + + +

context.arguments.missing

+

+ +

Defined in "Web IDL" (draft) +

Actual output:

+

FAIL (fallback content)

+ +
    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html new file mode 100644 index 0000000000..8753185449 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html @@ -0,0 +1,27 @@ + + +Canvas test: context.casesensitive + + + + + + +

    context.casesensitive

    +

    Context name "2D" is unrecognised; matching is case sensitive

    + + +

    Actual output:

    +

    FAIL (fallback content)

    + +
      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.emptystring.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.emptystring.html new file mode 100644 index 0000000000..1f27225882 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.emptystring.html @@ -0,0 +1,27 @@ + + +Canvas test: context.emptystring + + + + + + +

      context.emptystring

      +

      getContext with empty string returns null

      + + +

      Actual output:

      +

      FAIL (fallback content)

      + +
        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html new file mode 100644 index 0000000000..55d503036b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html @@ -0,0 +1,27 @@ + + +Canvas test: context.unrecognised.badname + + + + + + +

        context.unrecognised.badname

        +

        getContext with unrecognised context name returns null

        + + +

        Actual output:

        +

        FAIL (fallback content)

        + +
          + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html new file mode 100644 index 0000000000..ea0a14aaed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html @@ -0,0 +1,27 @@ + + +Canvas test: context.unrecognised.badsuffix + + + + + + +

          context.unrecognised.badsuffix

          +

          Context name "2d" plus a suffix is unrecognised

          + + +

          Actual output:

          +

          FAIL (fallback content)

          + +
            + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html new file mode 100644 index 0000000000..ea8db36a89 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html @@ -0,0 +1,27 @@ + + +Canvas test: context.unrecognised.nullsuffix + + + + + + +

            context.unrecognised.nullsuffix

            +

            Context name "2d" plus a "\0" suffix is unrecognised

            + + +

            Actual output:

            +

            FAIL (fallback content)

            + +
              + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html new file mode 100644 index 0000000000..727ea3584f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html @@ -0,0 +1,27 @@ + + +Canvas test: context.unrecognised.unicode + + + + + + +

              context.unrecognised.unicode

              +

              Context name which kind of looks like "2d" is unrecognised

              + + +

              Actual output:

              +

              FAIL (fallback content)

              + +
                + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.basic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.basic.html new file mode 100644 index 0000000000..5aaf49adf7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.basic.html @@ -0,0 +1,27 @@ + + +Canvas test: fallback.basic + + + + + + +

                fallback.basic

                +

                Fallback content is inserted into the DOM

                + + +

                Actual output:

                +

                FAIL (fallback content)

                + +
                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html new file mode 100644 index 0000000000..9585b06a4a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html @@ -0,0 +1,27 @@ + + +Canvas test: fallback.multiple + + + + + + +

                  fallback.multiple

                  +

                  Fallback content with multiple elements

                  + + +

                  Actual output:

                  +

                  FAIL

                  FAIL

                  + +
                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.nested.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.nested.html new file mode 100644 index 0000000000..14b19cd104 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/fallback.nested.html @@ -0,0 +1,27 @@ + + +Canvas test: fallback.nested + + + + + + +

                    fallback.nested

                    +

                    Fallback content containing another canvas (mostly testing parsers)

                    + + +

                    Actual output:

                    +

                    FAIL (fallback content)

                    FAIL (fallback content)

                    + +
                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/historical.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/historical.html new file mode 100644 index 0000000000..33044ffb1b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/historical.html @@ -0,0 +1,77 @@ + + +Historical canvas features + + +
                      + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/imagedata.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/imagedata.html new file mode 100644 index 0000000000..e124f8ff6e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/imagedata.html @@ -0,0 +1,58 @@ + + +ImageData Tests + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.html new file mode 100644 index 0000000000..166732a57b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.html @@ -0,0 +1,29 @@ + + +Canvas test: initial.colour + + + + + + +

                      initial.colour

                      +

                      Initial state is transparent black

                      + +

                      Output should be transparent black (not transparent anything-else), but manual +verification can only confirm that it's transparent - it's not possible to make +the actual blackness visible. + +

                      Actual output:

                      +

                      FAIL (fallback content)

                      +

                      Expected output:

                      +

                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.png new file mode 100644 index 0000000000..eeedd0ff05 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.colour.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html new file mode 100644 index 0000000000..ebf52bfa76 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html @@ -0,0 +1,32 @@ + + +Canvas test: initial.reset.clip + + + + + + +

                        initial.reset.clip

                        +

                        Resetting the canvas state resets the current clip region

                        + + +

                        Actual output:

                        +

                        FAIL (fallback content)

                        +

                        Expected output:

                        +

                          + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html new file mode 100644 index 0000000000..d55dd250c0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html @@ -0,0 +1,30 @@ + + +Canvas test: initial.reset.different + + + + + + +

                          initial.reset.different

                          +

                          Changing size resets canvas to transparent black

                          + + +

                          Actual output:

                          +

                          FAIL (fallback content)

                          +

                          Expected output:

                          +

                            + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png new file mode 100644 index 0000000000..d83fdd55b1 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html new file mode 100644 index 0000000000..31b56ec8e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html @@ -0,0 +1,35 @@ + + +Canvas test: initial.reset.gradient + + + + + + +

                            initial.reset.gradient

                            +

                            Resetting the canvas state does not invalidate any existing gradients

                            + + +

                            Actual output:

                            +

                            FAIL (fallback content)

                            +

                            Expected output:

                            +

                              + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html new file mode 100644 index 0000000000..3525377d2d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html @@ -0,0 +1,31 @@ + + +Canvas test: initial.reset.path + + + + + + +

                              initial.reset.path

                              +

                              Resetting the canvas state resets the current path

                              + + +

                              Actual output:

                              +

                              FAIL (fallback content)

                              +

                              Expected output:

                              +

                                + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png new file mode 100644 index 0000000000..eeedd0ff05 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html new file mode 100644 index 0000000000..28f8306d96 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html @@ -0,0 +1,35 @@ + + +Canvas test: initial.reset.pattern + + + + + + +

                                initial.reset.pattern

                                +

                                Resetting the canvas state does not invalidate any existing patterns

                                + + +

                                Actual output:

                                +

                                FAIL (fallback content)

                                +

                                Expected output:

                                +

                                  + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html new file mode 100644 index 0000000000..1a0872ba2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html @@ -0,0 +1,31 @@ + + +Canvas test: initial.reset.same + + + + + + +

                                  initial.reset.same

                                  +

                                  Setting size (not changing the value) resets canvas to transparent black

                                  + + +

                                  Actual output:

                                  +

                                  FAIL (fallback content)

                                  +

                                  Expected output:

                                  +

                                    + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png new file mode 100644 index 0000000000..eeedd0ff05 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html new file mode 100644 index 0000000000..36284ba498 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html @@ -0,0 +1,31 @@ + + +Canvas test: initial.reset.transform + + + + + + +

                                    initial.reset.transform

                                    +

                                    Resetting the canvas state resets the current transformation matrix

                                    + + +

                                    Actual output:

                                    +

                                    FAIL (fallback content)

                                    +

                                    Expected output:

                                    +

                                      + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.dataURI.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.dataURI.html new file mode 100644 index 0000000000..93b560e82c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.dataURI.html @@ -0,0 +1,39 @@ + + +Canvas test: security.dataURI + + + + + + +

                                      security.dataURI

                                      +

                                      data: URIs do not count as different-origin, and do not taint the canvas

                                      + + +

                                      Actual output:

                                      +

                                      FAIL (fallback content)

                                      +

                                      Expected output:

                                      +

                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross.html new file mode 100644 index 0000000000..3a32cf2c16 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross.html @@ -0,0 +1,36 @@ + + +Canvas test: security.drawImage.canvas.cross + + + + + + +

                                        security.drawImage.canvas.cross

                                        +

                                        drawImage of unclean canvas makes the canvas origin-unclean

                                        + + +

                                        Actual output:

                                        +

                                        FAIL (fallback content)

                                        + +
                                          + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect.html new file mode 100644 index 0000000000..5545205837 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect.html @@ -0,0 +1,36 @@ + + +Canvas test: security.drawImage.canvas.redirect + + + + + + +

                                          security.drawImage.canvas.redirect

                                          +

                                          drawImage of unclean canvas makes the canvas origin-unclean

                                          + + +

                                          Actual output:

                                          +

                                          FAIL (fallback content)

                                          + +
                                            + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross.html new file mode 100644 index 0000000000..b58177edc5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross.html @@ -0,0 +1,31 @@ + + +Canvas test: security.drawImage.image.cross + + + + + + +

                                            security.drawImage.image.cross

                                            +

                                            drawImage of different-origin image makes the canvas origin-unclean

                                            + + +

                                            Actual output:

                                            +

                                            FAIL (fallback content)

                                            + +
                                              + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect.html new file mode 100644 index 0000000000..4661554f9b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect.html @@ -0,0 +1,31 @@ + + +Canvas test: security.drawImage.image.redirect + + + + + + +

                                              security.drawImage.image.redirect

                                              +

                                              drawImage of different-origin image makes the canvas origin-unclean

                                              + + +

                                              Actual output:

                                              +

                                              FAIL (fallback content)

                                              + +
                                                + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross.html new file mode 100644 index 0000000000..35f0c70723 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross.html @@ -0,0 +1,38 @@ + + +Canvas test: security.pattern.canvas.fillStyle.cross + + + + + + +

                                                security.pattern.canvas.fillStyle.cross

                                                +

                                                Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean

                                                + + +

                                                Actual output:

                                                +

                                                FAIL (fallback content)

                                                + +
                                                  + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect.html new file mode 100644 index 0000000000..d17be93233 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect.html @@ -0,0 +1,38 @@ + + +Canvas test: security.pattern.canvas.fillStyle.redirect + + + + + + +

                                                  security.pattern.canvas.fillStyle.redirect

                                                  +

                                                  Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean

                                                  + + +

                                                  Actual output:

                                                  +

                                                  FAIL (fallback content)

                                                  + +
                                                    + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross.html new file mode 100644 index 0000000000..828becef8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross.html @@ -0,0 +1,38 @@ + + +Canvas test: security.pattern.canvas.strokeStyle.cross + + + + + + +

                                                    security.pattern.canvas.strokeStyle.cross

                                                    +

                                                    Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean

                                                    + + +

                                                    Actual output:

                                                    +

                                                    FAIL (fallback content)

                                                    + +
                                                      + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect.html new file mode 100644 index 0000000000..c6e7a64c15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect.html @@ -0,0 +1,38 @@ + + +Canvas test: security.pattern.canvas.strokeStyle.redirect + + + + + + +

                                                      security.pattern.canvas.strokeStyle.redirect

                                                      +

                                                      Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean

                                                      + + +

                                                      Actual output:

                                                      +

                                                      FAIL (fallback content)

                                                      + +
                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.cross.html new file mode 100644 index 0000000000..1ae1c4928b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.cross.html @@ -0,0 +1,41 @@ + + +Canvas test: security.pattern.canvas.timing.cross + + + + + + +

                                                        security.pattern.canvas.timing.cross

                                                        +

                                                        Pattern safety depends on whether the source was origin-clean, not on whether it still is clean

                                                        + +

                                                        Disagrees with spec on "is" vs "was" +

                                                        Actual output:

                                                        +

                                                        FAIL (fallback content)

                                                        + +
                                                          + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.redirect.html new file mode 100644 index 0000000000..f48366cd54 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.redirect.html @@ -0,0 +1,41 @@ + + +Canvas test: security.pattern.canvas.timing.redirect + + + + + + +

                                                          security.pattern.canvas.timing.redirect

                                                          +

                                                          Pattern safety depends on whether the source was origin-clean, not on whether it still is clean

                                                          + +

                                                          Disagrees with spec on "is" vs "was" +

                                                          Actual output:

                                                          +

                                                          FAIL (fallback content)

                                                          + +
                                                            + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.cross.html new file mode 100644 index 0000000000..e0d3d10556 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.cross.html @@ -0,0 +1,32 @@ + + +Canvas test: security.pattern.create.cross + + + + + + +

                                                            security.pattern.create.cross

                                                            +

                                                            Creating an unclean pattern does not make the canvas origin-unclean

                                                            + + +

                                                            Actual output:

                                                            +

                                                            FAIL (fallback content)

                                                            + +
                                                              + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.redirect.html new file mode 100644 index 0000000000..3fb7cf98b2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.redirect.html @@ -0,0 +1,32 @@ + + +Canvas test: security.pattern.create.redirect + + + + + + +

                                                              security.pattern.create.redirect

                                                              +

                                                              Creating an unclean pattern does not make the canvas origin-unclean

                                                              + + +

                                                              Actual output:

                                                              +

                                                              FAIL (fallback content)

                                                              + +
                                                                + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross.html new file mode 100644 index 0000000000..2dd14a87a9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross.html @@ -0,0 +1,39 @@ + + +Canvas test: security.pattern.cross.cross + + + + + + +

                                                                security.pattern.cross.cross

                                                                +

                                                                Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas

                                                                + + +

                                                                Actual output:

                                                                +

                                                                FAIL (fallback content)

                                                                + +
                                                                  + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect.html new file mode 100644 index 0000000000..8d69ea0afc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect.html @@ -0,0 +1,39 @@ + + +Canvas test: security.pattern.cross.redirect + + + + + + +

                                                                  security.pattern.cross.redirect

                                                                  +

                                                                  Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas

                                                                  + + +

                                                                  Actual output:

                                                                  +

                                                                  FAIL (fallback content)

                                                                  + +
                                                                    + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html new file mode 100644 index 0000000000..a1053c04a4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html @@ -0,0 +1,50 @@ + + +Canvas test: security.pattern.canvas.fillStyle.cross + + + + + + + +

                                                                    Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean

                                                                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross.html new file mode 100644 index 0000000000..1d7dc1d84f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross.html @@ -0,0 +1,33 @@ + + +Canvas test: security.pattern.image.fillStyle.cross + + + + + + +

                                                                    security.pattern.image.fillStyle.cross

                                                                    +

                                                                    Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean

                                                                    + + +

                                                                    Actual output:

                                                                    +

                                                                    FAIL (fallback content)

                                                                    + +
                                                                      + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect.html new file mode 100644 index 0000000000..3af917705b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect.html @@ -0,0 +1,33 @@ + + +Canvas test: security.pattern.image.fillStyle.redirect + + + + + + +

                                                                      security.pattern.image.fillStyle.redirect

                                                                      +

                                                                      Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean

                                                                      + + +

                                                                      Actual output:

                                                                      +

                                                                      FAIL (fallback content)

                                                                      + +
                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross.html new file mode 100644 index 0000000000..e35535af43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross.html @@ -0,0 +1,33 @@ + + +Canvas test: security.pattern.image.strokeStyle.cross + + + + + + +

                                                                        security.pattern.image.strokeStyle.cross

                                                                        +

                                                                        Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean

                                                                        + + +

                                                                        Actual output:

                                                                        +

                                                                        FAIL (fallback content)

                                                                        + +
                                                                          + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect.html new file mode 100644 index 0000000000..09df15d24f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect.html @@ -0,0 +1,33 @@ + + +Canvas test: security.pattern.image.strokeStyle.redirect + + + + + + +

                                                                          security.pattern.image.strokeStyle.redirect

                                                                          +

                                                                          Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean

                                                                          + + +

                                                                          Actual output:

                                                                          +

                                                                          FAIL (fallback content)

                                                                          + +
                                                                            + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html new file mode 100644 index 0000000000..f823bbd8ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html @@ -0,0 +1,35 @@ + + +Canvas test: security.reset.cross + + + + + + +

                                                                            security.reset.cross

                                                                            +

                                                                            Resetting the canvas state resets the origin-clean flag

                                                                            + + +

                                                                            Actual output:

                                                                            +

                                                                            FAIL (fallback content)

                                                                            + +
                                                                              + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html new file mode 100644 index 0000000000..af881c5fdc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html @@ -0,0 +1,35 @@ + + +Canvas test: security.reset.redirect + + + + + + +

                                                                              security.reset.redirect

                                                                              +

                                                                              Resetting the canvas state resets the origin-clean flag

                                                                              + + +

                                                                              Actual output:

                                                                              +

                                                                              FAIL (fallback content)

                                                                              + +
                                                                                + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html new file mode 100644 index 0000000000..ecf35285a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html @@ -0,0 +1,30 @@ + + +Canvas test: size.attributes.default + + + + + + +

                                                                                size.attributes.default

                                                                                +

                                                                                Default width/height when attributes are missing

                                                                                + + +

                                                                                Actual output:

                                                                                +

                                                                                FAIL (fallback content)

                                                                                +

                                                                                Expected output:

                                                                                +

                                                                                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png new file mode 100644 index 0000000000..a72d047556 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png new file mode 100644 index 0000000000..47830c83ea Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html new file mode 100644 index 0000000000..1594a1c5e5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html @@ -0,0 +1,50 @@ + + +Canvas test: size.attributes.idl + + + + + + +

                                                                                  size.attributes.idl

                                                                                  +

                                                                                  Getting/setting width/height IDL attributes

                                                                                  + + +

                                                                                  Actual output:

                                                                                  +

                                                                                  FAIL (fallback content)

                                                                                  + +
                                                                                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html new file mode 100644 index 0000000000..c09d5cb278 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html @@ -0,0 +1,30 @@ + + +Canvas test: size.attributes.idl.set.zero + + + + + + +

                                                                                    size.attributes.idl.set.zero

                                                                                    +

                                                                                    Setting width/height IDL attributes to 0

                                                                                    + + +

                                                                                    Actual output:

                                                                                    +

                                                                                    FAIL (fallback content)

                                                                                    + +
                                                                                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html new file mode 100644 index 0000000000..a25c4b784a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html @@ -0,0 +1,32 @@ + + +Canvas test: size.attributes.reflect.setcontent + + + + + + +

                                                                                      size.attributes.reflect.setcontent

                                                                                      +

                                                                                      Setting content attributes updates IDL and content attributes

                                                                                      + + +

                                                                                      Actual output:

                                                                                      +

                                                                                      FAIL (fallback content)

                                                                                      +

                                                                                      Expected output:

                                                                                      +

                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png new file mode 100644 index 0000000000..47830c83ea Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html new file mode 100644 index 0000000000..e228276da7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html @@ -0,0 +1,32 @@ + + +Canvas test: size.attributes.reflect.setidl + + + + + + +

                                                                                        size.attributes.reflect.setidl

                                                                                        +

                                                                                        Setting IDL attributes updates IDL and content attributes

                                                                                        + + +

                                                                                        Actual output:

                                                                                        +

                                                                                        FAIL (fallback content)

                                                                                        +

                                                                                        Expected output:

                                                                                        +

                                                                                          + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png new file mode 100644 index 0000000000..47830c83ea Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html new file mode 100644 index 0000000000..65df3f9f94 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html @@ -0,0 +1,32 @@ + + +Canvas test: size.attributes.reflect.setidlzero + + + + + + +

                                                                                          size.attributes.reflect.setidlzero

                                                                                          +

                                                                                          Setting IDL attributes to 0 updates IDL and content attributes

                                                                                          + + +

                                                                                          Actual output:

                                                                                          +

                                                                                          FAIL (fallback content)

                                                                                          + +
                                                                                            + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html new file mode 100644 index 0000000000..c96cba7b17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html @@ -0,0 +1,29 @@ + + +Canvas test: size.attributes.removed + + + + + + +

                                                                                            size.attributes.removed

                                                                                            +

                                                                                            Removing content attributes reverts to default size

                                                                                            + + +

                                                                                            Actual output:

                                                                                            +

                                                                                            FAIL (fallback content)

                                                                                            +

                                                                                            Expected output:

                                                                                            +

                                                                                              + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png new file mode 100644 index 0000000000..1ebf30d8aa Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png new file mode 100644 index 0000000000..47830c83ea Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html new file mode 100644 index 0000000000..aeb5c7ecb2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html @@ -0,0 +1,29 @@ + + +Canvas test: size.attributes.style + + + + + + +

                                                                                              size.attributes.style

                                                                                              +

                                                                                              Canvas size is independent of CSS resizing

                                                                                              + + +

                                                                                              Actual output:

                                                                                              +

                                                                                              FAIL (fallback content)

                                                                                              +

                                                                                              Expected output:

                                                                                              +

                                                                                                + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png new file mode 100644 index 0000000000..eeedd0ff05 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob-cross-realm-callback-report-exception.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob-cross-realm-callback-report-exception.html new file mode 100644 index 0000000000..393170baad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob-cross-realm-callback-report-exception.html @@ -0,0 +1,29 @@ + + +toBlob() reports the exception from its callback in the callback's global object + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html new file mode 100644 index 0000000000..1a95d4a6dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html @@ -0,0 +1,17 @@ + +Canvas test: toBlob.jpeg + + +
                                                                                                + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.null.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.null.html new file mode 100644 index 0000000000..11368a169c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.null.html @@ -0,0 +1,33 @@ + + +Canvas test: toBlob.null + + + + + + +

                                                                                                toBlob.null

                                                                                                +

                                                                                                toBlob with zero dimension returns a null Blob

                                                                                                + +

                                                                                                Actual output:

                                                                                                +

                                                                                                FAIL (fallback content)

                                                                                                + +
                                                                                                  + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.png.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.png.html new file mode 100644 index 0000000000..1533bfdb6c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toBlob.png.html @@ -0,0 +1,17 @@ + +Canvas test: toBlob.png + + +
                                                                                                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html new file mode 100644 index 0000000000..8ed134c6b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.arguments.1 + + + + + + +

                                                                                                  toDataURL.arguments.1

                                                                                                  +

                                                                                                  toDataURL ignores extra arguments

                                                                                                  + + +

                                                                                                  Actual output:

                                                                                                  +

                                                                                                  FAIL (fallback content)

                                                                                                  + +
                                                                                                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html new file mode 100644 index 0000000000..5226c215f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.arguments.2 + + + + + + +

                                                                                                    toDataURL.arguments.2

                                                                                                    +

                                                                                                    toDataURL ignores extra arguments

                                                                                                    + + +

                                                                                                    Actual output:

                                                                                                    +

                                                                                                    FAIL (fallback content)

                                                                                                    + +
                                                                                                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html new file mode 100644 index 0000000000..23b3e33ed8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html @@ -0,0 +1,29 @@ + + +Canvas test: toDataURL.arguments.3 + + + + + + +

                                                                                                      toDataURL.arguments.3

                                                                                                      +

                                                                                                      toDataURL ignores extra arguments

                                                                                                      + + +

                                                                                                      Actual output:

                                                                                                      +

                                                                                                      FAIL (fallback content)

                                                                                                      + +
                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html new file mode 100644 index 0000000000..9b2414fc0b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.bogustype + + + + + + +

                                                                                                        toDataURL.bogustype

                                                                                                        +

                                                                                                        toDataURL with a syntactically invalid type returns a PNG

                                                                                                        + + +

                                                                                                        Actual output:

                                                                                                        +

                                                                                                        FAIL (fallback content)

                                                                                                        + +
                                                                                                          + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html new file mode 100644 index 0000000000..8bae384373 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.default + + + + + + +

                                                                                                          toDataURL.default

                                                                                                          +

                                                                                                          toDataURL with no arguments returns a PNG

                                                                                                          + + +

                                                                                                          Actual output:

                                                                                                          +

                                                                                                          FAIL (fallback content)

                                                                                                          + +
                                                                                                            + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html new file mode 100644 index 0000000000..daf278351d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html @@ -0,0 +1,44 @@ + + +Canvas test: toDataURL.jpeg.alpha + + + + + + +

                                                                                                            toDataURL.jpeg.alpha

                                                                                                            +

                                                                                                            toDataURL with JPEG composites onto black

                                                                                                            + + +

                                                                                                            Actual output:

                                                                                                            +

                                                                                                            FAIL (fallback content)

                                                                                                            +

                                                                                                            Expected output:

                                                                                                            +

                                                                                                              + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png new file mode 100644 index 0000000000..551871295c Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html new file mode 100644 index 0000000000..750487bdea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html @@ -0,0 +1,47 @@ + + +Canvas test: toDataURL.jpeg.primarycolours + + + + + + +

                                                                                                              toDataURL.jpeg.primarycolours

                                                                                                              +

                                                                                                              toDataURL with JPEG handles simple colours correctly

                                                                                                              + + +

                                                                                                              Actual output:

                                                                                                              +

                                                                                                              FAIL (fallback content)

                                                                                                              +

                                                                                                              Expected output:

                                                                                                              +

                                                                                                                + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png new file mode 100644 index 0000000000..cfd1369007 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html new file mode 100644 index 0000000000..dc5d814244 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html @@ -0,0 +1,56 @@ + + +Canvas test: toDataURL.jpeg.quality.basic + + + + + + +

                                                                                                                toDataURL.jpeg.quality.basic

                                                                                                                +

                                                                                                                toDataURL with JPEG uses the quality parameter

                                                                                                                + + +

                                                                                                                Actual output:

                                                                                                                +

                                                                                                                FAIL (fallback content)

                                                                                                                +

                                                                                                                Expected output:

                                                                                                                +

                                                                                                                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png new file mode 100644 index 0000000000..2f8a0bc790 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html new file mode 100644 index 0000000000..aa8066e67f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html @@ -0,0 +1,42 @@ + + +Canvas test: toDataURL.jpeg.quality.notnumber + + + + + + +

                                                                                                                  toDataURL.jpeg.quality.notnumber

                                                                                                                  +

                                                                                                                  toDataURL with JPEG handles non-numeric quality parameters

                                                                                                                  + + +

                                                                                                                  Actual output:

                                                                                                                  +

                                                                                                                  FAIL (fallback content)

                                                                                                                  + +
                                                                                                                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html new file mode 100644 index 0000000000..9e40fb887b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html @@ -0,0 +1,43 @@ + + +Canvas test: toDataURL.jpeg.quality.outsiderange + + + + + + +

                                                                                                                    toDataURL.jpeg.quality.outsiderange

                                                                                                                    +

                                                                                                                    toDataURL with JPEG handles out-of-range quality parameters

                                                                                                                    + + +

                                                                                                                    Actual output:

                                                                                                                    +

                                                                                                                    FAIL (fallback content)

                                                                                                                    + +
                                                                                                                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html new file mode 100644 index 0000000000..e59793db70 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.jpg + + + + + + +

                                                                                                                      toDataURL.jpg

                                                                                                                      +

                                                                                                                      toDataURL with image/jpg is invalid type hence returns a PNG

                                                                                                                      + + +

                                                                                                                      Actual output:

                                                                                                                      +

                                                                                                                      FAIL (fallback content)

                                                                                                                      + +
                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html new file mode 100644 index 0000000000..858035cc64 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html @@ -0,0 +1,35 @@ + + +Canvas test: toDataURL.lowercase.ascii + + + + + + +

                                                                                                                        toDataURL.lowercase.ascii

                                                                                                                        +

                                                                                                                        toDataURL type is case-insensitive

                                                                                                                        + + +

                                                                                                                        Actual output:

                                                                                                                        +

                                                                                                                        FAIL (fallback content)

                                                                                                                        + +
                                                                                                                          + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html new file mode 100644 index 0000000000..123f966ee2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html @@ -0,0 +1,32 @@ + + +Canvas test: toDataURL.lowercase.unicode + + + + + + +

                                                                                                                          toDataURL.lowercase.unicode

                                                                                                                          +

                                                                                                                          toDataURL type is ASCII-case-insensitive

                                                                                                                          + + +

                                                                                                                          Actual output:

                                                                                                                          +

                                                                                                                          FAIL (fallback content)

                                                                                                                          + +
                                                                                                                            + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html new file mode 100644 index 0000000000..704dc74fb9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html @@ -0,0 +1,33 @@ + + +Canvas test: toDataURL.nocontext + + + + + + +

                                                                                                                            toDataURL.nocontext

                                                                                                                            +

                                                                                                                            toDataURL works before any context has been got

                                                                                                                            + + +

                                                                                                                            Actual output:

                                                                                                                            +

                                                                                                                            FAIL (fallback content)

                                                                                                                            + +
                                                                                                                              + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html new file mode 100644 index 0000000000..dadea7c5b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html @@ -0,0 +1,47 @@ + + +Canvas test: toDataURL.png.complexcolours + + + + + + +

                                                                                                                              toDataURL.png.complexcolours

                                                                                                                              +

                                                                                                                              toDataURL with PNG handles non-primary and non-solid colours correctly

                                                                                                                              + + +

                                                                                                                              Actual output:

                                                                                                                              +

                                                                                                                              FAIL (fallback content)

                                                                                                                              +

                                                                                                                              Expected output:

                                                                                                                              +

                                                                                                                                + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png new file mode 100644 index 0000000000..b5f9c118aa Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html new file mode 100644 index 0000000000..26c92a45a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.png + + + + + + +

                                                                                                                                toDataURL.png

                                                                                                                                +

                                                                                                                                toDataURL with image/png returns a PNG

                                                                                                                                + + +

                                                                                                                                Actual output:

                                                                                                                                +

                                                                                                                                FAIL (fallback content)

                                                                                                                                + +
                                                                                                                                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html new file mode 100644 index 0000000000..a13850d54e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html @@ -0,0 +1,47 @@ + + +Canvas test: toDataURL.png.primarycolours + + + + + + +

                                                                                                                                  toDataURL.png.primarycolours

                                                                                                                                  +

                                                                                                                                  toDataURL with PNG handles simple colours correctly

                                                                                                                                  + + +

                                                                                                                                  Actual output:

                                                                                                                                  +

                                                                                                                                  FAIL (fallback content)

                                                                                                                                  +

                                                                                                                                  Expected output:

                                                                                                                                  +

                                                                                                                                    + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png new file mode 100644 index 0000000000..cfd1369007 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html new file mode 100644 index 0000000000..835a898027 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.unrecognised + + + + + + +

                                                                                                                                    toDataURL.unrecognised

                                                                                                                                    +

                                                                                                                                    toDataURL with an unhandled type returns a PNG

                                                                                                                                    + + +

                                                                                                                                    Actual output:

                                                                                                                                    +

                                                                                                                                    FAIL (fallback content)

                                                                                                                                    + +
                                                                                                                                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html new file mode 100644 index 0000000000..9b09beb6d6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.zeroheight + + + + + + +

                                                                                                                                      toDataURL.zeroheight

                                                                                                                                      +

                                                                                                                                      toDataURL on zero-size canvas returns 'data:,'

                                                                                                                                      + + +

                                                                                                                                      Actual output:

                                                                                                                                      +

                                                                                                                                      FAIL (fallback content)

                                                                                                                                      + +
                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html new file mode 100644 index 0000000000..4468104268 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.zerosize + + + + + + +

                                                                                                                                        toDataURL.zerosize

                                                                                                                                        +

                                                                                                                                        toDataURL on zero-size canvas returns 'data:,'

                                                                                                                                        + + +

                                                                                                                                        Actual output:

                                                                                                                                        +

                                                                                                                                        FAIL (fallback content)

                                                                                                                                        + +
                                                                                                                                          + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html new file mode 100644 index 0000000000..9ab3524352 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html @@ -0,0 +1,28 @@ + + +Canvas test: toDataURL.zerowidth + + + + + + +

                                                                                                                                          toDataURL.zerowidth

                                                                                                                                          +

                                                                                                                                          toDataURL on zero-size canvas returns 'data:,'

                                                                                                                                          + + +

                                                                                                                                          Actual output:

                                                                                                                                          +

                                                                                                                                          FAIL (fallback content)

                                                                                                                                          + +
                                                                                                                                            + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.delete.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.delete.html new file mode 100644 index 0000000000..7fd54b30d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.delete.html @@ -0,0 +1,28 @@ + + +Canvas test: type.delete + + + + + + +

                                                                                                                                            type.delete

                                                                                                                                            +

                                                                                                                                            window.HTMLCanvasElement interface object is [[Configurable]]

                                                                                                                                            + +

                                                                                                                                            Defined in "Web IDL" (draft) +

                                                                                                                                            Actual output:

                                                                                                                                            +

                                                                                                                                            FAIL (fallback content)

                                                                                                                                            + +
                                                                                                                                              + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.exists.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.exists.html new file mode 100644 index 0000000000..26f59a1614 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.exists.html @@ -0,0 +1,27 @@ + + +Canvas test: type.exists + + + + + + +

                                                                                                                                              type.exists

                                                                                                                                              +

                                                                                                                                              HTMLCanvasElement is a property of window

                                                                                                                                              + +

                                                                                                                                              Defined in "Web IDL" (draft) +

                                                                                                                                              Actual output:

                                                                                                                                              +

                                                                                                                                              FAIL (fallback content)

                                                                                                                                              + +
                                                                                                                                                + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.extend.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.extend.html new file mode 100644 index 0000000000..e17209f455 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.extend.html @@ -0,0 +1,28 @@ + + +Canvas test: type.extend + + + + + + +

                                                                                                                                                type.extend

                                                                                                                                                +

                                                                                                                                                HTMLCanvasElement methods can be added, and the new methods used by canvases

                                                                                                                                                + +

                                                                                                                                                Defined in "Web IDL" (draft) +

                                                                                                                                                Actual output:

                                                                                                                                                +

                                                                                                                                                FAIL (fallback content)

                                                                                                                                                + +
                                                                                                                                                  + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.name.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.name.html new file mode 100644 index 0000000000..fdf1d1d398 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.name.html @@ -0,0 +1,27 @@ + + +Canvas test: type.name + + + + + + +

                                                                                                                                                  type.name

                                                                                                                                                  +

                                                                                                                                                  HTMLCanvasElement type and toString

                                                                                                                                                  + + +

                                                                                                                                                  Actual output:

                                                                                                                                                  +

                                                                                                                                                  FAIL (fallback content)

                                                                                                                                                  + +
                                                                                                                                                    + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.prototype.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.prototype.html new file mode 100644 index 0000000000..f47f755388 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.prototype.html @@ -0,0 +1,36 @@ + + +Canvas test: type.prototype + + + + + + +

                                                                                                                                                    type.prototype

                                                                                                                                                    +

                                                                                                                                                    window.HTMLCanvasElement has prototype, which is { ReadOnly, DontDelete }. prototype has getContext, which is not

                                                                                                                                                    + +

                                                                                                                                                    Defined in "Web IDL" (draft) +

                                                                                                                                                    Actual output:

                                                                                                                                                    +

                                                                                                                                                    FAIL (fallback content)

                                                                                                                                                    + +
                                                                                                                                                      + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.replace.html b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.replace.html new file mode 100644 index 0000000000..e67fe7c4a2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-canvas-element/type.replace.html @@ -0,0 +1,28 @@ + + +Canvas test: type.replace + + + + + + +

                                                                                                                                                      type.replace

                                                                                                                                                      +

                                                                                                                                                      HTMLCanvasElement methods can be replaced, and the replacement methods used by canvases

                                                                                                                                                      + +

                                                                                                                                                      Defined in "Web IDL" (draft) +

                                                                                                                                                      Actual output:

                                                                                                                                                      +

                                                                                                                                                      FAIL (fallback content)

                                                                                                                                                      + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin.html new file mode 100644 index 0000000000..89dc5d6d95 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin.html @@ -0,0 +1,14 @@ + + +Test that getSVGDocument() returns null for a cross-origin document. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-change-src.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-change-src.html new file mode 100644 index 0000000000..4152d51b0c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-change-src.html @@ -0,0 +1,26 @@ + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-dimension.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-dimension.html new file mode 100644 index 0000000000..d65e39c750 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-dimension.html @@ -0,0 +1,20 @@ + + +HTML Test: dimension + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-focus.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-focus.html new file mode 100644 index 0000000000..26a77918e0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-focus.html @@ -0,0 +1,25 @@ + + +HTML Test: The embed element represents a document + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-gbcr.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-gbcr.html new file mode 100644 index 0000000000..074e63bf2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document-under-content-visibility-gbcr.html @@ -0,0 +1,24 @@ + + +HTML Test: The embed element represents a document + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document.html new file mode 100644 index 0000000000..3d44678cf1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-document.html @@ -0,0 +1,17 @@ + + +HTML Test: The embed element represents a document + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute-ref.html new file mode 100644 index 0000000000..4b3d0feceb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute-ref.html @@ -0,0 +1,13 @@ + +The hidden global presentation attribute within the embed element + +This embed should be visible (green box): + + +These should not be visible (no red): + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute.html new file mode 100644 index 0000000000..18d3897df9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-hidden-attribute.html @@ -0,0 +1,20 @@ + +The hidden global presentation attribute within the embed element + + + +This embed should be visible (green box): + + +These should not be visible (no red): + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-iframe.html new file mode 100644 index 0000000000..f9b1bfdb57 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-iframe.html @@ -0,0 +1,7 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html new file mode 100644 index 0000000000..941b0c0b77 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html @@ -0,0 +1,22 @@ + + +HTML Test: The embed element represents a document + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-2.html new file mode 100644 index 0000000000..d904a7e1a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-2.html @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-subdocument.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-subdocument.html new file mode 100644 index 0000000000..a2c2a93992 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback-subdocument.html @@ -0,0 +1,4 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback.html new file mode 100644 index 0000000000..52fa01b91a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback.html @@ -0,0 +1,38 @@ + + +Ensure that embed elements inside object elements load when the objects + fall back but not otherwise + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-named-attribute-detached-context-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-named-attribute-detached-context-crash.html new file mode 100644 index 0000000000..7445b49f0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-named-attribute-detached-context-crash.html @@ -0,0 +1,13 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-network-error.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-network-error.sub.html new file mode 100644 index 0000000000..bae995c101 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-network-error.sub.html @@ -0,0 +1,54 @@ + + +Network errors with embed elements + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html new file mode 100644 index 0000000000..e66bd4a906 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html @@ -0,0 +1,18 @@ + + +HTML Test: The embed element without src and type attributes represents nothing + + + + + + +

                                                                                                                                                        Test passes if there is no red.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html new file mode 100644 index 0000000000..65cd672387 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html @@ -0,0 +1,22 @@ + + +HTML Test: The embed element represents nothing when its type and src attributs are removed + + + + + + +

                                                                                                                                                        Test passes if there is no red.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html new file mode 100644 index 0000000000..a16f3794ae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html @@ -0,0 +1,20 @@ + + +HTML Test: The embed element represents nothing when it has a media ancestor + + + + + + +

                                                                                                                                                        Test passes if there is no red.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html new file mode 100644 index 0000000000..7cc1b668a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html @@ -0,0 +1,20 @@ + + +HTML Test: The embed element represents nothing when it has an object ancestor + + + + + + +

                                                                                                                                                        Test passes if there is no red.

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-ref.html new file mode 100644 index 0000000000..91d680debf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-ref.html @@ -0,0 +1,7 @@ + + +Embed Reftest Reference + + +

                                                                                                                                                        Test passes if there is no red.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-svg-navigation-resets-size.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-svg-navigation-resets-size.html new file mode 100644 index 0000000000..237c9c3646 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/embed-svg-navigation-resets-size.html @@ -0,0 +1,31 @@ + + +Intrinsic sizing of SVG embedded via <embed> should disappear on navigation + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/historical.html b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/historical.html new file mode 100644 index 0000000000..9df7280bb6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-embed-element/historical.html @@ -0,0 +1,15 @@ + +Historical embed element features should not be supported + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin.html new file mode 100644 index 0000000000..2628e91009 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin.html @@ -0,0 +1,13 @@ + + +Test that contentDocument returns null for a cross-origin document. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_child.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_child.html new file mode 100644 index 0000000000..738ceee529 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_child.html @@ -0,0 +1,14 @@ + + Child. + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_grandchild.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_grandchild.html new file mode 100644 index 0000000000..885622c2b4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_grandchild.html @@ -0,0 +1,4 @@ +Grandchild. + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_parentage.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_parentage.html new file mode 100644 index 0000000000..1d62ccc480 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/change_parentage.html @@ -0,0 +1,22 @@ + + +Change the frame heriarchy + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/content_document_changes_only_after_load_matures.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/content_document_changes_only_after_load_matures.html new file mode 100644 index 0000000000..b657f26158 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/content_document_changes_only_after_load_matures.html @@ -0,0 +1,28 @@ + + +Iframe's contentDocument should only change after its pending load has matured. + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js new file mode 100644 index 0000000000..c88158d267 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js @@ -0,0 +1,59 @@ +async_test(t => { + const frame = document.body.appendChild(document.createElement("iframe")); + frame.src = "support/document-with-embedded-svg.html"; + const elements = { + "embed": ["getSVGDocument"], + "frame": ["contentDocument"], + "iframe": ["getSVGDocument", "contentDocument"], + "object": ["getSVGDocument", "contentDocument"] + }; + function element_to_document(element, api) { + return api === "getSVGDocument" ? element[api]() : element[api]; + } + function assert_apis(instance, assertNull = false) { + const name = instance.localName; + let priorPossibleDocument = null; + elements[name].forEach(api => { + const assertReason = `${name}.${api}`; + const possibleDocument = element_to_document(instance, api); + if (assertNull) { + assert_equals(possibleDocument, null, assertReason); + return; + } else { + assert_not_equals(possibleDocument, null, assertReason); + + // This needs standardizing still + // assert_class_string(possibleDocument, "XMLDocument"); + } + + // Ensure getSVGDocument() and contentDocument if both available return the same + if (priorPossibleDocument === null) { + priorPossibleDocument = possibleDocument; + } else { + assert_equals(priorPossibleDocument, possibleDocument); + } + }); + } + frame.onload = t.step_func_done(() => { + const instances = Object.keys(elements).map(element => frame.contentDocument.querySelector(element)); + // Everything is same origin and same origin-domain, no sweat + instances.forEach(instance => assert_apis(instance)); + // Make the SVG cross origin-domain (its container and the current settings object are not + // affected) + instances.forEach(instance => { + const svgDocument = element_to_document(instance, elements[instance.localName][0]); + svgDocument.domain = svgDocument.domain; + }); + instances.forEach(instance => assert_apis(instance, true)); + const svgContainer = frame.contentDocument; + // Make the current settings object same origin-domain with the SVG and cross origin-domain with + // SVG's container (SVG's container is not affected) + document.domain = document.domain; + assert_equals(frame.contentDocument, null); + instances.forEach(instance => assert_apis(instance, true)); + // Make everything same origin-domain once more + svgContainer.domain = svgContainer.domain; + instances.forEach(instance => assert_apis(instance)); + }); + document.body.appendChild(frame); +}, "Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain embedder document"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js new file mode 100644 index 0000000000..a1e592d8f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js @@ -0,0 +1,37 @@ +async_test(t => { + const frame = document.body.appendChild(document.createElement("iframe")); + frame.src = "support/document-with-embedded-svg.html"; + const elements = { + "embed": ["getSVGDocument"], + "frame": ["contentDocument"], + "iframe": ["getSVGDocument", "contentDocument"], + "object": ["getSVGDocument", "contentDocument"] + }; + function assert_apis(instance) { + const name = instance.localName; + let priorPossibleDocument = null; + elements[name].forEach(api => { + const possibleDocument = api == "getSVGDocument" ? instance[api]() : instance[api]; + assert_not_equals(possibleDocument, null, `${name}.${api}`); + // This needs standardizing still + // assert_class_string(possibleDocument, "XMLDocument"); + + // Ensure getSVGDocument() and contentDocument if both available return the same + if (priorPossibleDocument === null) { + priorPossibleDocument = possibleDocument; + } else { + assert_equals(priorPossibleDocument, possibleDocument); + } + }); + } + frame.onload = t.step_func_done(() => { + const instances = Object.keys(elements).map(element => frame.contentDocument.querySelector(element)); + // Everything is same origin and same origin-domain, no sweat + instances.forEach(instance => assert_apis(instance)); + // Make the current settings object cross origin-domain (SVG and its container are not affected) + document.domain = document.domain; + assert_equals(frame.contentDocument, null); + instances.forEach(instance => assert_apis(instance)); + }); + document.body.appendChild(frame); +}, "Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain current settings object"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_child.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_child.html new file mode 100644 index 0000000000..8b44fe805f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_child.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_grandchild.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_grandchild.html new file mode 100644 index 0000000000..1eff64af10 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_grandchild.html @@ -0,0 +1,11 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html new file mode 100644 index 0000000000..128892d7ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html @@ -0,0 +1,19 @@ + + +Check the frame heriarchy + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin.html new file mode 100644 index 0000000000..e3dc0b0e4e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin.html @@ -0,0 +1,17 @@ + + +Test that contentDocument/getSVGDocument() return null for a cross-origin document. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/historical.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/historical.html new file mode 100644 index 0000000000..0bc8b857b4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/historical.html @@ -0,0 +1,20 @@ + +Historical iframe element features should not be supported + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/hittest-detached-iframe-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/hittest-detached-iframe-crash.html new file mode 100644 index 0000000000..70fe8c1126 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/hittest-detached-iframe-crash.html @@ -0,0 +1,9 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allow.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allow.html new file mode 100644 index 0000000000..9e67314923 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allow.html @@ -0,0 +1,66 @@ + + +Check processing of allow attribute in nested browsing context + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen.html new file mode 100644 index 0000000000..9fc285bf3e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen.html @@ -0,0 +1,95 @@ + + +Check how allowfullscreen affects fullscreen enabled flag + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-append-to-child-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-append-to-child-document.html new file mode 100644 index 0000000000..ac8bd5e053 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-append-to-child-document.html @@ -0,0 +1,17 @@ + + +Append iframe element to its own child document + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-display-none-with-object.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-display-none-with-object.html new file mode 100644 index 0000000000..ee73953217 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-display-none-with-object.html @@ -0,0 +1,16 @@ + + +Test that iframe with object triggers load event in owner document + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-document-move-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-document-move-crash.html new file mode 100644 index 0000000000..43da8bf50c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-document-move-crash.html @@ -0,0 +1,13 @@ + +This test passes if it does not crash. + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-first-load-canceled-second-load-blank.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-first-load-canceled-second-load-blank.html new file mode 100644 index 0000000000..bed3b6477f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-first-load-canceled-second-load-blank.html @@ -0,0 +1,38 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated-ref.html new file mode 100644 index 0000000000..0484c397cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated-ref.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated.html new file mode 100644 index 0000000000..818ec0362e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-initially-empty-is-updated.html @@ -0,0 +1,21 @@ + + +Iframe that doesn't load can be updated and rendered. + + + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html new file mode 100644 index 0000000000..5ffe53c308 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html @@ -0,0 +1,43 @@ + + +Test some sanity behavior around iframe load/error events + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-eager.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-eager.html new file mode 100644 index 0000000000..8acd99d23d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-eager.html @@ -0,0 +1,52 @@ + + + Iframes with loading='eager' load immediately regardless of their + position with respect to the viewport. + + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url-2.html new file mode 100644 index 0000000000..8782f3d315 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url-2.html @@ -0,0 +1,49 @@ + + + Deferred loading=lazy iframes load relative to the document's base URL + at parse-time + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url.html new file mode 100644 index 0000000000..ec9f73400d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-base-url.html @@ -0,0 +1,45 @@ + + + Deferred iframes with loading='lazy' use the original + base URL specified at parse-time + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-script-disabled-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-script-disabled-iframe.html new file mode 100644 index 0000000000..4f191cd784 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-script-disabled-iframe.html @@ -0,0 +1,23 @@ + + +Iframes with loading='lazy' in script disabled iframe are not handled + as 'lazy' + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html new file mode 100644 index 0000000000..eeb05b7b98 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html @@ -0,0 +1,49 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html new file mode 100644 index 0000000000..f058b46fbd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html @@ -0,0 +1,52 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html new file mode 100644 index 0000000000..80ba0829a9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html @@ -0,0 +1,52 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html new file mode 100644 index 0000000000..d080831175 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html @@ -0,0 +1,57 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html new file mode 100644 index 0000000000..aa02bb4151 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html @@ -0,0 +1,65 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html new file mode 100644 index 0000000000..e15d891fb5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html @@ -0,0 +1,58 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html new file mode 100644 index 0000000000..b36265024d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html @@ -0,0 +1,61 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html new file mode 100644 index 0000000000..50b5e7ee0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html @@ -0,0 +1,57 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html new file mode 100644 index 0000000000..631710e740 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html @@ -0,0 +1,49 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-001.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-001.html new file mode 100644 index 0000000000..408e5309e5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-001.html @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-ref.html new file mode 100644 index 0000000000..067bfa1920 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-viewport-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-load-event.html new file mode 100644 index 0000000000..bf98bf7585 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-load-event.html @@ -0,0 +1,47 @@ + + + In-viewport loading=lazy iframes do not block the window load event + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-queued-navigations.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-queued-navigations.html new file mode 100644 index 0000000000..0569881ea5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-queued-navigations.html @@ -0,0 +1,52 @@ + + + Multiple queued lazy load navigations do not crash the page + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-times.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-times.html new file mode 100644 index 0000000000..89e41e61bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-multiple-times.html @@ -0,0 +1,69 @@ + + + Iframes with loading='lazy' can be lazy loaded multiple times + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-referrerpolicy-change.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-referrerpolicy-change.sub.html new file mode 100644 index 0000000000..68734d5708 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-referrerpolicy-change.sub.html @@ -0,0 +1,45 @@ + + + Deferred loading=lazy iframes are fetched with the parse-time + `referrerpolicy` attribute + + + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-to-eager.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-to-eager.html new file mode 100644 index 0000000000..371601a8c3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-to-eager.html @@ -0,0 +1,55 @@ + + + Below-viewport iframes with loading='lazy' load when set to + loading='eager' or the `loading` attribute is removed + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy.html new file mode 100644 index 0000000000..336703ebc4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy.html @@ -0,0 +1,110 @@ + + + Iframes with loading='lazy' load when in the viewport + + + + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes-ref.html new file mode 100644 index 0000000000..3758ea2cab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes-ref.html @@ -0,0 +1,7 @@ + +iframe with scrolling attr equals yes + + +

                                                                                                                                                        Test passes if you can see the scrollbars of the iframe displayed below.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes.html new file mode 100644 index 0000000000..9d85aa543d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes.html @@ -0,0 +1,16 @@ + +modify iframe scrolling attr to yes + + + + +

                                                                                                                                                        Test passes if you can see the scrollbars of the iframe displayed below.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-network-error.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-network-error.sub.html new file mode 100644 index 0000000000..4dd3012af4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-network-error.sub.html @@ -0,0 +1,54 @@ + + +Network errors with iframe elements + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc.html new file mode 100644 index 0000000000..57189a0b88 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc.html @@ -0,0 +1,26 @@ + + +Check processing of iframe without src and srcdoc attribute + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard.html new file mode 100644 index 0000000000..c339525ebd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard.html @@ -0,0 +1,32 @@ + + +IFrame discards are processed synchronously + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-with-base-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-with-base-ref.html new file mode 100644 index 0000000000..21f11d1953 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-with-base-ref.html @@ -0,0 +1,9 @@ + + + + iframe Without Base Tag + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_navigate_ancestor-1.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_navigate_ancestor-1.sub.html new file mode 100644 index 0000000000..5e3b7682cc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_navigate_ancestor-1.sub.html @@ -0,0 +1,12 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src.html new file mode 100644 index 0000000000..f0ff9ff508 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src.html @@ -0,0 +1,40 @@ + + +Test that removing the src attribute of an iframe loads about:blank + instead of whatever was loaded previously. + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html new file mode 100644 index 0000000000..3e65d91984 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html @@ -0,0 +1,46 @@ + + +HTML Test: iframe_sandbox_allow_scripts + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1.html new file mode 100644 index 0000000000..b033ec44d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1.html @@ -0,0 +1,24 @@ + + + + + Check that sandboxed iframe can perform navigation on the top frame + when allow-top-navigation is set + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2.html new file mode 100644 index 0000000000..bd7d92c0dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2.html @@ -0,0 +1,23 @@ + + + + + Check that sandboxed iframe cannot perform navigation on the top + frame when allow-top-navigation is not set + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html new file mode 100644 index 0000000000..c3e5dc1fd6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html @@ -0,0 +1,28 @@ + + + + + Check that sandboxed iframe can perform navigation on the top frame + when allow-top-navigation is set (even when + allow-top-navigation-by-user-activation is set) + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation-manual.html new file mode 100644 index 0000000000..0fa9de7c12 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation-manual.html @@ -0,0 +1,24 @@ + + + + + + + + +

                                                                                                                                                        This tests that an iframe in sandbox with 'allow-top-navigation-by-user-activation' + can navigate the top level page, if it is trigged by a user gesture.

                                                                                                                                                        +

                                                                                                                                                        Click on the button in the iframe and it should navigate the top page.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation_without_user_gesture.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation_without_user_gesture.html new file mode 100644 index 0000000000..042851bbb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation_without_user_gesture.html @@ -0,0 +1,19 @@ + + + + + + + + +

                                                                                                                                                        This tests that an iframe in sandbox with 'allow-top-navigation-by-user-activation' + cannot navigate its top level page, if it is not trigged by a user gesture.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.tentative.html new file mode 100644 index 0000000000..26b8b393ab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.tentative.html @@ -0,0 +1,48 @@ + + +<a download> triggered download in sandbox is allowed by allow-downloads. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative.html new file mode 100644 index 0000000000..df46932319 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative.html @@ -0,0 +1,73 @@ + + +<a download> triggered download in sandbox is blocked. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1.html new file mode 100644 index 0000000000..ce171bfb8e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1.html @@ -0,0 +1,13 @@ + + +iframe sandbox without allow_modals (alert) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2.html new file mode 100644 index 0000000000..fbd4d23d01 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2.html @@ -0,0 +1,13 @@ + + +iframe sandbox without allow_modals (confirm) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3.html new file mode 100644 index 0000000000..5712301180 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3.html @@ -0,0 +1,13 @@ + + +iframe sandbox without allow_modals (prompt) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4.html new file mode 100644 index 0000000000..f750e345ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4.html @@ -0,0 +1,13 @@ + + +iframe sandbox without allow_modals (print) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-1.html new file mode 100644 index 0000000000..4cf48184c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-1.html @@ -0,0 +1,12 @@ + + +Check that sandboxed iframe can not navigate their ancestors + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-2.html new file mode 100644 index 0000000000..159491c73c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-2.html @@ -0,0 +1,12 @@ + + +Check that unsandboxed iframe can navigate their ancestors + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_descendants.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_descendants.html new file mode 100644 index 0000000000..0934adfa82 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_descendants.html @@ -0,0 +1,12 @@ + + +Check that sandboxed iframe can navigate their descendants + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back-2.html new file mode 100644 index 0000000000..7a94f1ce4a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back-2.html @@ -0,0 +1,16 @@ + + +Check that sandboxed iframe can navigate their self + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back.html new file mode 100644 index 0000000000..7026edf8f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_back.html @@ -0,0 +1,18 @@ + + +Check that sandboxed iframe can not navigate their ancestors + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_forward.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_forward.html new file mode 100644 index 0000000000..e9d1def099 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_history_go_forward.html @@ -0,0 +1,28 @@ + + +Check that sandboxed iframe can not navigate their ancestors + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_itself.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_itself.html new file mode 100644 index 0000000000..12c4e0ca50 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_itself.html @@ -0,0 +1,12 @@ + + +Check that sandboxed iframe can navigate itself + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_other_frame_popup.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_other_frame_popup.sub.html new file mode 100644 index 0000000000..19704b38a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_other_frame_popup.sub.html @@ -0,0 +1,64 @@ + + +Check that sandboxed iframe can not navigate other frame's popup + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative.html new file mode 100644 index 0000000000..6b3b3104ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative.html @@ -0,0 +1,52 @@ + + +Navigation resulted download in sandbox is allowed by allow-downloads. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads.sub.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads.sub.tentative.html new file mode 100644 index 0000000000..87d1d722d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads.sub.tentative.html @@ -0,0 +1,52 @@ + + +Navigation resulted download in sandbox is blocked. + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html new file mode 100644 index 0000000000..342d422036 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html @@ -0,0 +1,25 @@ + + +Check that popups from a sandboxed iframe escape the sandbox if + allow-popups-to-escape-sandbox is used + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-2.html new file mode 100644 index 0000000000..40ffbb1e02 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-2.html @@ -0,0 +1,31 @@ + + +Check that popups from a sandboxed iframe escape the sandbox if + allow-popups-to-escape-sandbox is used + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html new file mode 100644 index 0000000000..2d35fd5fc1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html @@ -0,0 +1,25 @@ + + +Check that popups from a sandboxed iframe escape the sandbox if + allow-popups-to-escape-sandbox is used + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-1.html new file mode 100644 index 0000000000..6b120f15d0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-1.html @@ -0,0 +1,16 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-2.html new file mode 100644 index 0000000000..ea28cf5375 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-2.html @@ -0,0 +1,28 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-3.html new file mode 100644 index 0000000000..ef3e59037f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_helper-3.html @@ -0,0 +1,17 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html new file mode 100644 index 0000000000..3dee96d67a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html @@ -0,0 +1,15 @@ + + +Check that popups from a sandboxed iframe do not escape the sandbox + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html new file mode 100644 index 0000000000..27046db744 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html @@ -0,0 +1,18 @@ + + +Check that popups from a sandboxed iframe do not escape the sandbox + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html new file mode 100644 index 0000000000..556387e14a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html @@ -0,0 +1,15 @@ + + +Check that popups from a sandboxed iframe do not escape the sandbox + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html new file mode 100644 index 0000000000..158fc4f947 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html @@ -0,0 +1,29 @@ + + +Downloads triggered by window.open from sandbox are blocked. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_block_downloads.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_block_downloads.tentative.html new file mode 100644 index 0000000000..20423e202f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_block_downloads.tentative.html @@ -0,0 +1,29 @@ + + +Downloads triggered by window.open from sandbox are blocked. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html new file mode 100644 index 0000000000..900d8cd022 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html @@ -0,0 +1,21 @@ + +moving modified IFRAME in document (original page about:blank, DOM modification) + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html new file mode 100644 index 0000000000..d82dafe3ce --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html @@ -0,0 +1,23 @@ + +moving modified IFRAME in document (original page about:blank, document.write modification) + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html new file mode 100644 index 0000000000..5db77ad890 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html @@ -0,0 +1,21 @@ + +moving modified IFRAME in document (original page from server, DOM modification) + + + + +
                                                                                                                                                        + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html new file mode 100644 index 0000000000..bd076948ab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html @@ -0,0 +1,23 @@ + +moving modified IFRAME in document (original page from server, document.write modification) + + + + +
                                                                                                                                                        + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/multiple-iframes-with-allow-scripts-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/multiple-iframes-with-allow-scripts-crash.html new file mode 100644 index 0000000000..572f119be8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/multiple-iframes-with-allow-scripts-crash.html @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/empty.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/empty.html new file mode 100644 index 0000000000..763b0739be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/empty.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/hello-world.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/hello-world.html new file mode 100644 index 0000000000..0d1111b48c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/hello-world.html @@ -0,0 +1,11 @@ + + + + + + +
                                                                                                                                                        Hello world!
                                                                                                                                                        + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/iframe-loading-lazy-in-viewport.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/iframe-loading-lazy-in-viewport.html new file mode 100644 index 0000000000..1efd2bd056 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/iframe-loading-lazy-in-viewport.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/post-origin-to-opener.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/post-origin-to-opener.html new file mode 100644 index 0000000000..bb625942f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/post-origin-to-opener.html @@ -0,0 +1,3 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox-top-navigation-helper.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox-top-navigation-helper.js new file mode 100644 index 0000000000..413f392dfc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox-top-navigation-helper.js @@ -0,0 +1,76 @@ +// To use this file, use the following imports: +// // META: script=/common/dispatcher/dispatcher.js +// // META: script=/common/get-host-info.sub.js +// // META: script=/common/utils.js +// // META: script=/resources/testdriver.js +// // META: script=/resources/testdriver-vendor.js +// // META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js +// // META: script=./resources/sandbox-top-navigation-helper.js + +// Helper file that provides various functions to test top-level navigation +// with various frame and sandbox flag configurations. + +async function createNestedIframe(parent, origin, frame_sandbox, header_sandbox) +{ + let headers = []; + if (header_sandbox) { + headers.push([ + "Content-Security-Policy", + "sandbox allow-scripts " + header_sandbox + ]); + } + let iframe_attributes = {}; + if (frame_sandbox) { + iframe_attributes.sandbox = "allow-scripts " + frame_sandbox; + } + return parent.addIframe({ + origin: origin, + scripts: [ + '/resources/testdriver.js', + '/resources/testdriver-driver.js', + '/resources/testdriver-vendor.js' + ], + headers: headers, + }, iframe_attributes); +} + +async function attemptTopNavigation(iframe, should_succeed) { + let did_succeed; + try { + await iframe.executeScript(() => { + window.top.location.href = "https://google.com"; + }); + did_succeed = true; + } catch (e) { + did_succeed = false; + } + + assert_equals(did_succeed, should_succeed, + should_succeed ? + "The navigation should succeed." : + "The navigation should fail."); +} + +async function setupTest() { + const rcHelper = new RemoteContextHelper(); + return rcHelper.addWindow(/*config=*/ null, /*options=*/ {}); +} + +async function activate(iframe) { + return iframe.executeScript(async () => { + let b = document.createElement("button"); + document.body.appendChild(b); + + // Since test_driver.bless() does not play nicely with the remote context + // helper, this is a workaround to trigger user activation in the iframe. + // This adds a button to the iframe and then simulates hitting the 'tab' key + // twice. Once to focus on the button, and once to trigger user activation + // in the iframe (user activation is given to the frame that has focus when + // the tab key is pressed, not the frame that ends up getting focus). Note + // that this will result in both the parent and this frame getting user + // activation. Note that this currently only works for iframes nested 1 + // level deep. + test_driver.set_test_context(window.top); + return test_driver.send_keys(document.body, "\uE004\uE004"); + }); +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/subframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/subframe.html new file mode 100644 index 0000000000..07cb999afa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/subframe.html @@ -0,0 +1,4 @@ + + +

                                                                                                                                                        Subframe

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/unload-reporter.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/unload-reporter.html new file mode 100644 index 0000000000..18599b2a6e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/resources/unload-reporter.html @@ -0,0 +1,8 @@ + +

                                                                                                                                                        I'll report to my parent when I'm unloaded

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_child.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_child.html new file mode 100644 index 0000000000..a36e231fa2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_child.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_grandchild.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_grandchild.html new file mode 100644 index 0000000000..e7a2293b76 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_grandchild.html @@ -0,0 +1,11 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_parentage.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_parentage.html new file mode 100644 index 0000000000..a163eb8eec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/same_origin_parentage.html @@ -0,0 +1,19 @@ + + +Check the frame heriarchy + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-ascii-case-insensitive.html new file mode 100644 index 0000000000..fd77bfa42f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-ascii-case-insensitive.html @@ -0,0 +1,41 @@ + + +iframe 'sandbox' ASCII case insensitive + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed-frame.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed-frame.html new file mode 100644 index 0000000000..0f35f28709 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed-frame.html @@ -0,0 +1,87 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html new file mode 100644 index 0000000000..2c6f0bd6a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html @@ -0,0 +1,100 @@ + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html.headers b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html.headers new file mode 100644 index 0000000000..9850d21f3c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-inherit-to-blank-document-unsandboxed.html.headers @@ -0,0 +1 @@ +Content-Security-Policy: sandbox allow-scripts allow-popups allow-popups-to-escape-sandbox diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-toggle-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-toggle-in-inactive-document-crash.html new file mode 100644 index 0000000000..654542f6a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-toggle-in-inactive-document-crash.html @@ -0,0 +1,9 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-special-cases.tentative.sub.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-special-cases.tentative.sub.window.js new file mode 100644 index 0000000000..8681411dd7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child-special-cases.tentative.sub.window.js @@ -0,0 +1,47 @@ +// META: title=Top-level navigation tests with cross origin & user activated child frames +// META: script=/common/dispatcher/dispatcher.js +// META: script=/common/get-host-info.sub.js +// META: script=/common/utils.js +// META: script=/resources/testdriver.js +// META: script=/resources/testdriver-vendor.js +// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js +// META: script=./resources/sandbox-top-navigation-helper.js + +'use strict'; + +/* ------------------------- USER ACTIVATION TESTS ------------------------- */ + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "allow-top-navigation-by-user-activation", ""); + await activate(iframe_1); + + await attemptTopNavigation(iframe_1, true); +}, "Allow top with user activation + user activation"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "allow-top-navigation-by-user-activation", ""); + + await attemptTopNavigation(iframe_1, false); +}, "allow-top-navigation-by-user-activation set but no sticky activation"); + +/* ---------------------- CROSS ORIGIN (A -> B) TESTS ---------------------- */ + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "allow-top-navigation", ""); + + await attemptTopNavigation(iframe_1, true); +}, "A cross-origin frame with frame sandbox flags can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "", "allow-top-navigation"); + + await attemptTopNavigation(iframe_1, false); +}, "A cross-origin frame with delivered sandbox flags can not navigate top"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child.tentative.sub.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child.tentative.sub.window.js new file mode 100644 index 0000000000..53faa99a40 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-child.tentative.sub.window.js @@ -0,0 +1,56 @@ +// META: title=Top-level navigation tests with child frames +// META: script=/common/dispatcher/dispatcher.js +// META: script=/common/get-host-info.sub.js +// META: script=/common/utils.js +// META: script=/resources/testdriver.js +// META: script=/resources/testdriver-vendor.js +// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js +// META: script=./resources/sandbox-top-navigation-helper.js + +'use strict'; + +/* ----------------------- SAME ORIGIN (A -> A) TESTS ----------------------- */ + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", "allow-top-navigation allow-same-origin"); + + await attemptTopNavigation(iframe_1, true); +}, "A same-origin frame with delivered sandbox flags can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "allow-top-navigation allow-same-origin", ""); + + await attemptTopNavigation(iframe_1, true); +}, "A same-origin frame with frame sandbox flags can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + + await attemptTopNavigation(iframe_1, true); +}, "A same-origin unsandboxed frame can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", + "allow-top-navigation allow-top-navigation-by-user-activation allow-same-origin"); + + await attemptTopNavigation(iframe_1, true); +}, "A frame with both top navigation delivered sandbox flags uses the less \ + restrictive one"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", + "allow-top-navigation allow-top-navigation-by-user-activation", ""); + + await attemptTopNavigation(iframe_1, true); +}, "A frame with both top navigation frame sandbox flags uses the less \ + restrictive one"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-escalate-privileges.tentative.sub.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-escalate-privileges.tentative.sub.window.js new file mode 100644 index 0000000000..a5cda9b0b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-escalate-privileges.tentative.sub.window.js @@ -0,0 +1,63 @@ +// META: title=Top-level navigation tests with frames that try to give themselves top-nav permission +// META: script=/common/dispatcher/dispatcher.js +// META: script=/common/get-host-info.sub.js +// META: script=/common/utils.js +// META: script=/resources/testdriver.js +// META: script=/resources/testdriver-vendor.js +// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js +// META: script=./resources/sandbox-top-navigation-helper.js + +'use strict'; + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_REMOTE_ORIGIN", "allow-top-navigation", ""); + + await attemptTopNavigation(iframe_2, false); +}, "A cross origin unsandboxed frame can't escalate privileges in a child \ + frame"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "allow-top-navigation", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "OTHER_ORIGIN", "", ""); + + await attemptTopNavigation(iframe_2, true); +}, "An unsandboxed grandchild inherits its parents ability to navigate top."); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "allow-top-navigation", ""); + + await attemptTopNavigation(iframe_2, true); +}, "A same-origin grandchild with frame allow-top can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "", "allow-top-navigation"); + + await attemptTopNavigation(iframe_2, false); +}, "A sandboxed same-origin grandchild without allow-same-origin can't \ + escalate its own top-nav privileges"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "", "allow-same-origin allow-top-navigation"); + + await attemptTopNavigation(iframe_2, true); +}, "A sandboxed same-origin grandchild with allow-same-origin can \ + give itself top-nav privileges"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-grandchild.tentative.sub.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-grandchild.tentative.sub.window.js new file mode 100644 index 0000000000..a07148f802 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox-top-navigation-grandchild.tentative.sub.window.js @@ -0,0 +1,50 @@ +// META: title=Top-level navigation tests with grandchild frames +// META: script=/common/dispatcher/dispatcher.js +// META: script=/common/get-host-info.sub.js +// META: script=/common/utils.js +// META: script=/resources/testdriver.js +// META: script=/resources/testdriver-vendor.js +// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js +// META: script=./resources/sandbox-top-navigation-helper.js + +'use strict'; + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "allow-scripts", ""); + + await attemptTopNavigation(iframe_2, false); +}, "A fully sandboxed same-origin grandchild can't navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "", ""); + + await attemptTopNavigation(iframe_2, true); +}, "An unsandboxed same-origin grandchild can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "", ""); + + await attemptTopNavigation(iframe_2, true); +}, "A same-origin grandchild in a cross-origin parent can navigate top"); + +promise_test(async t => { + const main = await setupTest(); + const iframe_1 = await createNestedIframe(main, + "HTTP_REMOTE_ORIGIN", "", ""); + const iframe_2 = await createNestedIframe(iframe_1, + "HTTP_ORIGIN", "allow-top-navigation allow-same-origin", ""); + + await attemptTopNavigation(iframe_2, true); +}, "A same-origin sandboxed grandchild in a cross-origin parent can navigate top"); \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_001.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_001.htm new file mode 100644 index 0000000000..97af61163a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_001.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Allow script execution inside iframe with sandbox attribute when sandbox="allow-scripts". + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_002.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_002.htm new file mode 100644 index 0000000000..4291674275 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_002.htm @@ -0,0 +1,25 @@ + + + + HTML5 Sandbox: Allow autoplay for HTML5 Video inside iframe with sandbox attribute if sandbox='allow-scripts'. + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_003-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_003-manual.htm new file mode 100644 index 0000000000..6363900bed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_003-manual.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Block autofocus on form control inside iframe with sandbox attribute. + + + + + + + +
                                                                                                                                                        Description: Block autofocus on form controls inside iframe with sandbox attribute.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        ManualTest passes if caret (text cursor) is not on the textbox in the below iframe.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_004.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_004.htm new file mode 100644 index 0000000000..08b32f0158 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_004.htm @@ -0,0 +1,27 @@ + + +Sandbox: Block plugins inside iframe with sandbox attribute + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_005.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_005.htm new file mode 100644 index 0000000000..7b1e60e7e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_005.htm @@ -0,0 +1,33 @@ + + + + HTML5 Sandbox: Block script execution inside iframe with sandbox attribute. + + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_006-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_006-manual.htm new file mode 100644 index 0000000000..1935f439f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_006-manual.htm @@ -0,0 +1,37 @@ + + + + HTML5 Sandbox: Allow form submission inside sandbox iframe when sandbox='allow-forms' + + + + + + + +
                                                                                                                                                        Description: Allow form submission inside iframe with sandbox attribute if sandbox='allow-forms'.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        Manual +
                                                                                                                                                        Steps:
                                                                                                                                                        +
                                                                                                                                                        1. Click button "Submit Form".
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Test passes if there is no red on the page and if the word "PASS" appears in the below iframe after following the above steps.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox="allow-forms"
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_007-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_007-manual.htm new file mode 100644 index 0000000000..dfed9a6f0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_007-manual.htm @@ -0,0 +1,37 @@ + + + + HTML5 Sandbox: Block form submission inside sandbox iframe + + + + + + + +
                                                                                                                                                        Description: Block form submission inside iframe with sandbox attribute.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        Manual +
                                                                                                                                                        Steps:
                                                                                                                                                        +
                                                                                                                                                        1. Click button "Submit Form".
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Test passes if there is no red on the page and there is no navigation in the below iframe after following the above steps.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox="allow-scripts allow-same-origin allow-top-navigation"
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_008-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_008-manual.htm new file mode 100644 index 0000000000..9e479a7899 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_008-manual.htm @@ -0,0 +1,37 @@ + + + + HTML5 Sandbox: Allow sandboxed iframe content to navigate the sandboxed browsing context itself. + + + + + + + +
                                                                                                                                                        Description: Allow sandboxed iframe content to navigate the sandboxed browsing context itself.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        Manual +
                                                                                                                                                        Steps:
                                                                                                                                                        +
                                                                                                                                                        1. Click link "Click here to perform self navigation".
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Test passes if there is no red on the page and the word "PASS" appears in the below iframe after following the above steps.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox=""
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_010-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_010-manual.htm new file mode 100644 index 0000000000..41802be775 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_010-manual.htm @@ -0,0 +1,37 @@ + + + + HTML5 Sandbox: Block window.open() API inside iframe with sandbox attribute. + + + + + + + +
                                                                                                                                                        Description: Block window.open() API inside iframe with sandbox attribute.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        Manual +
                                                                                                                                                        Steps:
                                                                                                                                                        +
                                                                                                                                                        1. Click button "Click here to call window.open() API".
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Test passes if there is no red on the page and no new window opens. The user agent may offer the user the option of allowing a new window to open.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox="allow-scripts allow-same-origin allow-forms allow-top-navigation"
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_011.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_011.htm new file mode 100644 index 0000000000..ce3ee1a7d0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_011.htm @@ -0,0 +1,65 @@ + + + + HTML5 Sandbox: iframe sandbox attribute value support DOMTokenList interface. + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_012.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_012.htm new file mode 100644 index 0000000000..7642162d5a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_012.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_013.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_013.htm new file mode 100644 index 0000000000..c434989706 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_013.htm @@ -0,0 +1,36 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_014.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_014.htm new file mode 100644 index 0000000000..d979c91977 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_014.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_015.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_015.htm new file mode 100644 index 0000000000..6fd5405c73 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_015.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_016.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_016.htm new file mode 100644 index 0000000000..4c5f043d2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_016.htm @@ -0,0 +1,33 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_017.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_017.htm new file mode 100644 index 0000000000..f46f22e15b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_017.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_018.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_018.htm new file mode 100644 index 0000000000..b5e5927ce4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_018.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_019.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_019.htm new file mode 100644 index 0000000000..a503531f81 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_019.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: value of sandbox attribute must be an unordered set of unique space-separated tokens. + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_020-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_020-manual.htm new file mode 100644 index 0000000000..ed46b3b298 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_020-manual.htm @@ -0,0 +1,34 @@ + + + + HTML5 Sandbox: Nested iframes cannot have less sandbox restrictions than their most restrictive ancestor iframe. + + + + + + + +
                                                                                                                                                        Description: Nested iframes cannot have less sandbox restrictions than their most restrictive ancestor iframe.
                                                                                                                                                        +
                                                                                                                                                        This test is to verify script is blocked inside nested iframes if the top-most sandbox iframe has no 'allow-scripts' token.
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        ManualTest passes if there is no red on the page.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Top-most iframe with sandbox=""
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_021-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_021-manual.htm new file mode 100644 index 0000000000..0d149d3974 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_021-manual.htm @@ -0,0 +1,44 @@ + + + + HTML5 Sandbox: Nested iframes cannot have less sandbox restrictions than their most restrictive ancestor iframe. + + + + + + + +
                                                                                                                                                        Description: Nested iframes cannot have less sandbox restrictions than their most restrictive ancestor iframe.
                                                                                                                                                        +
                                                                                                                                                        This test is to verify script is allowed inside nested iframes if any of the conditions below are true
                                                                                                                                                        +
                                                                                                                                                        1. both parent sandbox and child sandbox have 'allow-scripts' token.
                                                                                                                                                        +
                                                                                                                                                        2. parent sandbox has 'allow-scripts' token and nested child iframe has no sandbox attribute.
                                                                                                                                                        +
                                                                                                                                                        3. parent iframe has no sandbox attribute and child iframe has sandbox='allow-scripts' token.
                                                                                                                                                        +
                                                                                                                                                        4. both parent and child iframes have no sandbox attribute.
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        ManualTest passes if there is no red on the page.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Top-most iframe with sandbox="allow-scripts"
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Top-most iframe without sandbox attribute
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_022-manual.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_022-manual.htm new file mode 100644 index 0000000000..ebfca06a61 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_022-manual.htm @@ -0,0 +1,37 @@ + + + + HTML5 Sandbox: allow sandbox iframe to navigate their top-level browsing context if sandbox="allow-top-navigation". + + + + + + + +
                                                                                                                                                        Description: Allow sandbox iframe to navigate its top-level browsing context if sandbox='allow-top-navigation'.
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        Test ResultTest Assertion
                                                                                                                                                        Manual +
                                                                                                                                                        Steps:
                                                                                                                                                        +
                                                                                                                                                        1. Click link "Open the link in top window".
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Test passes if there is no red on the page and no top-level navigation after following the above steps.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        iframe with sandbox="allow-top-navigation"
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_023.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_023.htm new file mode 100644 index 0000000000..78cf35d2bb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_023.htm @@ -0,0 +1,33 @@ + + + + HTML5 Sandbox: Allow sandbox iframe to access other content from the same origin if sandbox="allow-same-origin". + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_024.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_024.htm new file mode 100644 index 0000000000..530162e5b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_024.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: document.cookie access is allowed inside iframe with sandbox="allow-same-origin". + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_025.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_025.htm new file mode 100644 index 0000000000..96783062bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_025.htm @@ -0,0 +1,30 @@ + + + + HTML5 Sandbox: Allow parent content to access sandbox child iframe content when sandbox='allow-same-origin + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_026.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_026.htm new file mode 100644 index 0000000000..694a43dad3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_026.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Allow localStorage and sessionStorage access inside iframe with sandbox='allow-same-origin allow-scripts'. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_027.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_027.htm new file mode 100644 index 0000000000..aa28505c5f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_027.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Allow XMLHttpRequest inside iframe with the sandbox attribute if sandbox='allow-same-origin'. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_028.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_028.htm new file mode 100644 index 0000000000..76afcdbe3c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_028.htm @@ -0,0 +1,33 @@ + + + + HTML5 Sandbox: Block sandbox iframe from accessing other content from the same origin. + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_029.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_029.htm new file mode 100644 index 0000000000..d458e04cd3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_029.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Block document.cookie inside iframe with the sandbox attribute. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_030.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_030.htm new file mode 100644 index 0000000000..d6bb6cc7ba --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_030.htm @@ -0,0 +1,31 @@ + + + + HTML5 Sandbox: Block parent content to access sandbox child iframe content when sandbox attribute exists + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_031.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_031.htm new file mode 100644 index 0000000000..3c65d416c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_031.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Block localStorage and sessionStorage inside iframe with the sandbox attribute. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_032.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_032.htm new file mode 100644 index 0000000000..4e6293949a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/sandbox_032.htm @@ -0,0 +1,32 @@ + + + + HTML5 Sandbox: Block XMLHttpRequest in an iframe with the sandbox attribute. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/src-repeated-in-ancestor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/src-repeated-in-ancestor.html new file mode 100644 index 0000000000..2f77dfe164 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/src-repeated-in-ancestor.html @@ -0,0 +1,138 @@ + + +Navigation should not occur when `src` matches the location of a anscestor browsing context + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-anchor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-anchor.html new file mode 100644 index 0000000000..cf26c28f08 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-anchor.html @@ -0,0 +1,17 @@ +Verify srcdoc content loads when src is about:srcdoc#foo. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-attribute-reset.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-attribute-reset.html new file mode 100644 index 0000000000..452a984afb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc-attribute-reset.html @@ -0,0 +1,33 @@ +Verify that clearing srcdoc resets the iframe's content. + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_change_hash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_change_hash.html new file mode 100644 index 0000000000..fe72333d1a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_change_hash.html @@ -0,0 +1,68 @@ +same-document navigation inside an srcdoc iframe using location.hash + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_process_attributes.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_process_attributes.html new file mode 100644 index 0000000000..0bd9f9b229 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/srcdoc_process_attributes.html @@ -0,0 +1,76 @@ + + +Whenever `srcdoc` attribute is set, changed, or removed, the UA must process the <iframe> attributes + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/stash.py b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/stash.py new file mode 100644 index 0000000000..2404380881 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/stash.py @@ -0,0 +1,5 @@ +def main(request, response): + if request.method == u'POST': + request.server.stash.put(request.GET[b"id"], request.body) + return u'' + return request.server.stash.take(request.GET[b"id"]) diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm new file mode 100644 index 0000000000..18ecdcb795 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm @@ -0,0 +1 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html new file mode 100644 index 0000000000..a81d13d9a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html @@ -0,0 +1,9 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/download_stash.py b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/download_stash.py new file mode 100644 index 0000000000..11366a9c3f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/download_stash.py @@ -0,0 +1,32 @@ +import time + +def main(request, response): + token = request.GET[b"token"] + response.status = 200 + response.headers.append(b"Content-Type", b"text/html") + + # Make sure to disable sniffing because it would read enough bytes to finish + # the load, before even giving the client application a chance to cancel it. + response.headers.append(b"X-Content-Type-Options", b"nosniff") + + if b"verify-token" in request.GET: + if request.server.stash.take(token): + return u'TOKEN_SET' + return u'TOKEN_NOT_SET' + + if b"finish-delay" not in request.GET: + # + request.server.stash.put(token, True) + return + + # navigation to download + response.headers.append(b"Content-Disposition", b"attachment") + response.write_status_headers() + finish_delay = float(request.GET[b"finish-delay"]) / 1E3 + count = 10 + single_delay = finish_delay / count + for i in range(count): # pylint: disable=unused-variable + time.sleep(single_delay) + if not response.writer.write_content(b"\n"): + return + request.server.stash.put(token, True) diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-checks-contentDocument.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-checks-contentDocument.html new file mode 100644 index 0000000000..bc35a977e8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-checks-contentDocument.html @@ -0,0 +1,3 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-opens-modals.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-opens-modals.html new file mode 100644 index 0000000000..50f56c6278 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-opens-modals.html @@ -0,0 +1,23 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-on-popup.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-on-popup.html new file mode 100644 index 0000000000..9b9eae8a72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-on-popup.html @@ -0,0 +1,14 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-without-user-gesture-failed.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-without-user-gesture-failed.html new file mode 100644 index 0000000000..0436d56df9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation-without-user-gesture-failed.html @@ -0,0 +1,16 @@ + + +The top navigation from this iframe should be blocked. This text should appear. + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation.html new file mode 100644 index 0000000000..c855ca3bab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-performs-top-navigation.html @@ -0,0 +1,20 @@ + + + + + +

                                                                                                                                                        This doc tried to navigate the top page when loaded, which should fail since it's not trigged by user activation while in a sandboxed frame with 'allow-top-navigtaion-by-user-activation'.

                                                                                                                                                        + Click the button below, the top navigation should succeed with a new page saying "PASSED: Navigation succeeded." in browsers supporting the 'allow-top-navigtaion-by-user-activation' iframe@sandbox keyword (eg., Chrome v58+); Otherwise, the top navigation should fail. +

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-send-message-to-the-opener.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-send-message-to-the-opener.html new file mode 100644 index 0000000000..0dc3b1122a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-send-message-to-the-opener.html @@ -0,0 +1,8 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-tries-to-navigate-parent-and-sends-result-to-grandparent.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-tries-to-navigate-parent-and-sends-result-to-grandparent.html new file mode 100644 index 0000000000..4b8930de42 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-tries-to-navigate-parent-and-sends-result-to-grandparent.html @@ -0,0 +1,11 @@ + +

                                                                                                                                                        This is a frame that tries to navigate its parent.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-history.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-history.html new file mode 100644 index 0000000000..c4ba8011f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-history.html @@ -0,0 +1,18 @@ + +

                                                                                                                                                        This is a frame that tries to navigate via history API.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-its-child.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-its-child.html new file mode 100644 index 0000000000..50edc878ad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-its-child.html @@ -0,0 +1,4 @@ + +

                                                                                                                                                        If this message appears, then this frame has not been navigated by its child.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html new file mode 100644 index 0000000000..9ac754c418 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html @@ -0,0 +1,11 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-itself.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-itself.html new file mode 100644 index 0000000000..6755d295aa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-itself.html @@ -0,0 +1,11 @@ + +

                                                                                                                                                        If this message appears, then this frame has not been navigated.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-which-content-height-equals-400px.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-which-content-height-equals-400px.html new file mode 100644 index 0000000000..bb3dbd3118 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-which-content-height-equals-400px.html @@ -0,0 +1,4 @@ + + +iframe content + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-with-object.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-with-object.html new file mode 100644 index 0000000000..c983a9d36d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-with-object.html @@ -0,0 +1,10 @@ + + +Display:none iframe with object tag + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_001.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_001.htm new file mode 100644 index 0000000000..051ca5ecd7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_001.htm @@ -0,0 +1,11 @@ + + + + Page with script + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_002.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_002.htm new file mode 100644 index 0000000000..e637847714 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_002.htm @@ -0,0 +1,21 @@ + + + + HTML5 video with autoplay attribute. + + + + + Your browser does not support HTML5 video. + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_003.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_003.htm new file mode 100644 index 0000000000..621ece79af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_003.htm @@ -0,0 +1,12 @@ + + + + autofocus on form control + + +
                                                                                                                                                        Below form control has autofocus attribute set.

                                                                                                                                                        +
                                                                                                                                                        + Textbox: +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_004.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_004.htm new file mode 100644 index 0000000000..661afb0943 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_004.htm @@ -0,0 +1,11 @@ + + + + object tag + + + + Fallback content + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_006.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_006.htm new file mode 100644 index 0000000000..42542ae147 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_006.htm @@ -0,0 +1,12 @@ + + + +Form submission + + +
                                                                                                                                                        + Name:
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_007.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_007.htm new file mode 100644 index 0000000000..fc01557c75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_007.htm @@ -0,0 +1,12 @@ + + + +Form submission + + +
                                                                                                                                                        + Name:
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_008.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_008.htm new file mode 100644 index 0000000000..ebd8279675 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_008.htm @@ -0,0 +1,9 @@ + + + + Page with hyperlink and target set to self + + +
                                                                                                                                                        Click here to perform self navigation + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_010.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_010.htm new file mode 100644 index 0000000000..27fc4209f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_010.htm @@ -0,0 +1,9 @@ + + + + Page with window.open() + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_012.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_012.htm new file mode 100644 index 0000000000..b1e8f92fb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_012.htm @@ -0,0 +1,13 @@ + + + + Page with access to document.cookie + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020.htm new file mode 100644 index 0000000000..fd0d6bb6fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020.htm @@ -0,0 +1,28 @@ + + + + Page with iframes + + + + + + + + + + + + +
                                                                                                                                                        + child iframe with sandbox="allow-scripts" attribute
                                                                                                                                                        + +
                                                                                                                                                        + child iframe with sandbox="" attribute
                                                                                                                                                        + +
                                                                                                                                                        + child iframe without sandbox attribute
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020a.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020a.htm new file mode 100644 index 0000000000..ccfa4eae2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020a.htm @@ -0,0 +1,13 @@ + + + + Page with script + + +
                                                                                                                                                        Script Execution: Blocked
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021.htm new file mode 100644 index 0000000000..63f5892456 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021.htm @@ -0,0 +1,28 @@ + + + + Page with iframes + + + + + + + + + + + + +
                                                                                                                                                        + child iframe with sandbox="allow-scripts" attribute
                                                                                                                                                        + +
                                                                                                                                                        + child iframe with sandbox="" attribute
                                                                                                                                                        + +
                                                                                                                                                        + child iframe without sandbox attribute
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021a.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021a.htm new file mode 100644 index 0000000000..a42520d7e1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021a.htm @@ -0,0 +1,13 @@ + + + + Page with script + + +
                                                                                                                                                        Script Execution: Blocked
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_022.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_022.htm new file mode 100644 index 0000000000..87082e51dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_022.htm @@ -0,0 +1,11 @@ + + + + target=_top + + +
                                                                                                                                                        hyperlink with target=_top
                                                                                                                                                        +
                                                                                                                                                        + Open the link in top window + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_023.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_023.htm new file mode 100644 index 0000000000..a65db539bb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_023.htm @@ -0,0 +1,15 @@ + + +Access parent dom + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_024.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_024.htm new file mode 100644 index 0000000000..1b0996e589 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_024.htm @@ -0,0 +1,13 @@ + + +Page with access to document.cookie + + +
                                                                                                                                                        Cookie Read:
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_026.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_026.htm new file mode 100644 index 0000000000..7171cf7721 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_026.htm @@ -0,0 +1,12 @@ + + +Page with access to localStorage and sessionStorage + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_027.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_027.htm new file mode 100644 index 0000000000..c1a48cdef9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_027.htm @@ -0,0 +1,21 @@ + + +XMLHttpRequest + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_028.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_028.htm new file mode 100644 index 0000000000..d7ca761441 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_028.htm @@ -0,0 +1,20 @@ + + +Access parent dom + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_029.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_029.htm new file mode 100644 index 0000000000..5d5c720bd8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_029.htm @@ -0,0 +1,19 @@ + + +Page with access to document.cookie + + +
                                                                                                                                                        Cookie Read:
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_031.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_031.htm new file mode 100644 index 0000000000..fb987dac38 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_031.htm @@ -0,0 +1,19 @@ + + +Page with access to localStorage and sessionStorage + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_032.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_032.htm new file mode 100644 index 0000000000..6059b7df43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_032.htm @@ -0,0 +1,27 @@ + + +XMLHttpRequest + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_block_modals.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_block_modals.js new file mode 100644 index 0000000000..67733d8101 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_block_modals.js @@ -0,0 +1,18 @@ +function runTest(modalName, expectedValue) { + let timeOutForFailingToOpenModal = 500; + let startTime; + async_test(t => { + let iframe = document.querySelector("iframe"); + iframe.onload = t.step_func(() => { + window.addEventListener("message", t.step_func_done(e => { + // This tests work by checking the call to open the modal diaglog will return immediately (or at least within timeOutForFailingToOpenModal). + // If the modal dialog is not blocked, then it will wait for user input and the test will time out. + assert_less_than(new Date().getTime() - startTime, timeOutForFailingToOpenModal, "Call to open modal dialog did not return immediately"); + assert_equals(e.data, expectedValue, "Call to open modal dialog did not return expected value"); + })); + startTime = new Date().getTime(); + iframe.contentWindow.postMessage(modalName, "*"); + }); + iframe.src = "support/iframe-that-opens-modals.html"; + }, "Frames without `allow-modals` should not be able to open modal dialogs"); +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_download_helper.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_download_helper.js new file mode 100644 index 0000000000..7090e7662c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_download_helper.js @@ -0,0 +1,37 @@ +function StreamDownloadFinishDelay() { + return 1000; +} + +function DownloadVerifyDelay() { + return 1000; +} + +function VerifyDownload(test_obj, token, timeout, expect_download) { + var verify_token = test_obj.step_func(function () { + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'support/download_stash.py?verify-token&token=' + token); + xhr.onload = test_obj.step_func(function(e) { + if (expect_download) { + if (xhr.response != "TOKEN_SET") { + // Always retry, and rely on the test timeout to conclude that + // download didn't happen and to fail the test. + test_obj.step_timeout(verify_token, DownloadVerifyDelay()); + return; + } + } else { + assert_equals(xhr.response, "TOKEN_NOT_SET", "Expect no download to happen, but got one."); + } + test_obj.done(); + }); + xhr.send(); + }); + test_obj.step_timeout(verify_token, timeout); +} + +function AssertDownloadSuccess(test_obj, token, timeout) { + VerifyDownload(test_obj, token, timeout, true); +} + +function AssertDownloadFailure(test_obj, token, timeout) { + VerifyDownload(test_obj, token, timeout, false); +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/load-into-the-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/load-into-the-iframe.html new file mode 100644 index 0000000000..9e08eb587a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/load-into-the-iframe.html @@ -0,0 +1,24 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/navigation-changed-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/navigation-changed-iframe.html new file mode 100644 index 0000000000..abe0e78dfe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/navigation-changed-iframe.html @@ -0,0 +1,14 @@ + + + + + +

                                                                                                                                                        DOMAIN

                                                                                                                                                        +

                                                                                                                                                        PASSED: Navigation succeeded.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf new file mode 100644 index 0000000000..0e16bc8d93 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf.headers b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf.headers new file mode 100644 index 0000000000..5a8e57e482 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox.pdf.headers @@ -0,0 +1 @@ +Content-Type: application/pdf diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html new file mode 100644 index 0000000000..a2d5b73eda --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html @@ -0,0 +1,8 @@ + + +HTML Test: sandbox_allow_scripts + +
                                                                                                                                                        Before change
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_helper.js b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_helper.js new file mode 100644 index 0000000000..26aa67faf4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_helper.js @@ -0,0 +1,14 @@ +function IsSandboxSupported() { + if ('sandbox' in document.createElement('iframe')) { + return true; + } + return false; +} + +function DisableTestForNonSupportingBrowsers() { + //check if sandbox is supported by the browser + if (!IsSandboxSupported()) { + document.getElementById('testframe').innerHTML = "FAIL: Your browser does not support the sandbox attribute on the iframe element."; + document.getElementById('testframe').style.color = "Red"; + } +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-fail.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-fail.htm new file mode 100644 index 0000000000..29ef4d5abb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-fail.htm @@ -0,0 +1,9 @@ + + + + Page with FAIL message + + +
                                                                                                                                                        FAIL!!!
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-iframe-content.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-iframe-content.htm new file mode 100644 index 0000000000..b26f7fda75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-iframe-content.htm @@ -0,0 +1,9 @@ + + + + Page with a message + + +
                                                                                                                                                        Hello World.
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm new file mode 100644 index 0000000000..9d1b2530fe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm @@ -0,0 +1,9 @@ + + + + Page with PASS message + + +
                                                                                                                                                        PASS!!!
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg new file mode 100644 index 0000000000..1570afcadc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg @@ -0,0 +1 @@ + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/3.jpg b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/3.jpg new file mode 100644 index 0000000000..d30ac2ac36 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/3.jpg differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html new file mode 100644 index 0000000000..73b937f67f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html @@ -0,0 +1,18 @@ + + +404 response with actual image data should be rendered and load event is fired + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py new file mode 100644 index 0000000000..083aa90b41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py @@ -0,0 +1,4 @@ +from base64 import decodebytes + +def main(req, res): + return 404, [(b'Content-Type', b'image/png')], decodebytes(b"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAhSURBVDhPY3wro/KfgQLABKXJBqMGjBoAAqMGDLwBDAwAEsoCTFWunmQAAAAASUVORK5CYII=") diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html new file mode 100644 index 0000000000..3cfef5f4f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html @@ -0,0 +1,42 @@ + +DOM Image constructor Test + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adopt-from-image-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adopt-from-image-document.html new file mode 100644 index 0000000000..30729fc81c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adopt-from-image-document.html @@ -0,0 +1,16 @@ + +Adopt img from image document + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adoption.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adoption.html new file mode 100644 index 0000000000..15e02bcf51 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/adoption.html @@ -0,0 +1,91 @@ + + +Adopting an image updates the image data + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/already-loaded-image-sync-width.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/already-loaded-image-sync-width.html new file mode 100644 index 0000000000..4a63bd7a7a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/already-loaded-image-sync-width.html @@ -0,0 +1,20 @@ + + +Image dimensions are available synchronously after changing src to an already-loaded image + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-onload.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-onload.html new file mode 100644 index 0000000000..5fc5cb8b61 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-onload.html @@ -0,0 +1,33 @@ + + +Ensure images from available images list can be drawn to a canvas + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-ref.html new file mode 100644 index 0000000000..8061abae50 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images.html new file mode 100644 index 0000000000..779ff97868 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/available-images.html @@ -0,0 +1,17 @@ + + +Ensure images from available images list are rendered + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/below-viewport-image-loading-lazy-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/below-viewport-image-loading-lazy-load-event.html new file mode 100644 index 0000000000..b1dee3a3ca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/below-viewport-image-loading-lazy-load-event.html @@ -0,0 +1,69 @@ + + + Below-viewport loading=lazy images do not block the window load event + when scrolled into viewport + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/brokenimg.jpg b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/brokenimg.jpg new file mode 100644 index 0000000000..ccff177ae9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/brokenimg.jpg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html new file mode 100644 index 0000000000..f7d47b3640 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html @@ -0,0 +1,37 @@ + +img current pixel density basic + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html new file mode 100644 index 0000000000..5e328b5e2d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html @@ -0,0 +1,31 @@ + +img current pixel density error + + +
                                                                                                                                                        +testing +testing +testing +testing +testing +testing +testing + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/currentSrc-blob-cache.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/currentSrc-blob-cache.html new file mode 100644 index 0000000000..a5e108dcd6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/currentSrc-blob-cache.html @@ -0,0 +1,45 @@ + + +currentSrc is right even if underlying image is a shared blob + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/data-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/data-url.html new file mode 100644 index 0000000000..808b5c884c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/data-url.html @@ -0,0 +1,24 @@ + + +data URL image + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-iframe.html new file mode 100644 index 0000000000..ed14a007a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-iframe.html @@ -0,0 +1,54 @@ + + + +HTMLImageElement.prototype.decode(), iframe tests. + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-image-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-image-document.html new file mode 100644 index 0000000000..e54ae223a0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-image-document.html @@ -0,0 +1,25 @@ + +HTMLImageElement.prototype.decode(), image document tests. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative.html new file mode 100644 index 0000000000..1bc53a1f18 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative.html @@ -0,0 +1,82 @@ + + + +SVGImageElement.prototype.decode(), href mutation tests. + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes.html new file mode 100644 index 0000000000..4b878c1bae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes.html @@ -0,0 +1,121 @@ + + + +HTMLImageElement.prototype.decode(), src/srcset mutation tests. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture.html new file mode 100644 index 0000000000..2f4d5e7c41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture.html @@ -0,0 +1,133 @@ + + + +HTMLImageElement.prototype.decode(), picture tests. + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative.html new file mode 100644 index 0000000000..047470f1e3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative.html @@ -0,0 +1,128 @@ + + + +SVGImageElement.prototype.decode(), basic tests. + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative.html new file mode 100644 index 0000000000..0fc49e6036 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative.html @@ -0,0 +1,23 @@ + + + +SVGImageElement.prototype.decode(), attach to DOM before promise resolves. + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach.html new file mode 100644 index 0000000000..be680da619 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach.html @@ -0,0 +1,26 @@ + + + +HTMLImageElement.prototype.decode(), attach to DOM before promise resolves. + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode.html new file mode 100644 index 0000000000..fac61a1446 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/decode/image-decode.html @@ -0,0 +1,138 @@ + + + +HTMLImageElement.prototype.decode(), basic tests. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-detached.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-detached.html new file mode 100644 index 0000000000..5c68de29e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-detached.html @@ -0,0 +1,30 @@ + + +Detached image blocks load + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-until-move-to-empty-source.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-until-move-to-empty-source.html new file mode 100644 index 0000000000..7b61606c47 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event-until-move-to-empty-source.html @@ -0,0 +1,25 @@ + + +Inline image element blocks load until source is changed to empty source + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event.html new file mode 100644 index 0000000000..ac0cf29d3f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/delay-load-event.html @@ -0,0 +1,26 @@ + + +Inline image element blocks load + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/disconnected-image-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/disconnected-image-loading-lazy.html new file mode 100644 index 0000000000..fe6d79fe2a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/disconnected-image-loading-lazy.html @@ -0,0 +1,32 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-adopt-base-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-adopt-base-url.html new file mode 100644 index 0000000000..ea63114d57 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-adopt-base-url.html @@ -0,0 +1,14 @@ + + +Document base URL adopted img test + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html new file mode 100644 index 0000000000..6e55b21ff0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html @@ -0,0 +1,5 @@ + + +Document base URL img test + +cat diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url.html new file mode 100644 index 0000000000..074209cc04 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-base-url.html @@ -0,0 +1,7 @@ + + +Document base URL img test + + + +cat diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-destroyed-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-destroyed-crash.html new file mode 100644 index 0000000000..da43099f71 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/document-destroyed-crash.html @@ -0,0 +1,18 @@ + +<img> loading in destroyed document + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html new file mode 100644 index 0000000000..0f7ab9ae27 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html new file mode 100644 index 0000000000..f6ae65708c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html @@ -0,0 +1,65 @@ + +img viewport change + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/historical-progress-event.window.js b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/historical-progress-event.window.js new file mode 100644 index 0000000000..7c4e121b7c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/historical-progress-event.window.js @@ -0,0 +1,16 @@ +async_test(t => { + const img = new Image(); + t.add_cleanup(() => img.remove()); + img.onloadstart = img.onprogress = img.onloadend = t.unreached_func("progress event fired"); + img.onload = t.step_func_done(e => { + assert_true(e instanceof Event); + assert_false(e instanceof ProgressEvent); + }); + img.src = "/images/rrgg-256x256.png"; + document.body.append(img); +}, " does not support ProgressEvent or loadstart/progress/loadend"); + +test(t => { + assert_equals(document.body.onloadend, undefined); + assert_equals(window.onloadend, undefined); +}, "onloadend is not exposed"); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-1.jpg b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-1.jpg new file mode 100644 index 0000000000..2fb0255609 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-1.jpg differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-base-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-base-url.html new file mode 100644 index 0000000000..932cd92b41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-base-url.html @@ -0,0 +1,70 @@ + + + + Image load parses URL after microtask runs + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change-ref.html new file mode 100644 index 0000000000..ea80d8b545 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change-ref.html @@ -0,0 +1,10 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change.html new file mode 100644 index 0000000000..d3e7ee4171 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-change.html @@ -0,0 +1,31 @@ + + +Composited images correctly re-raster when the image and bounds change + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change-ref.html new file mode 100644 index 0000000000..852a47687e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change-ref.html @@ -0,0 +1,16 @@ + + + + + +
                                                                                                                                                        div
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change.html new file mode 100644 index 0000000000..515f88e3f4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-compositing-large-scale-change.html @@ -0,0 +1,36 @@ + + +Composited images correctly display under large scale transform changes + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-eager.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-eager.html new file mode 100644 index 0000000000..54e169f867 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-eager.html @@ -0,0 +1,47 @@ + + + Images with loading='eager' load immediately regardless of their + position with respect to the viewport + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-available.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-available.html new file mode 100644 index 0000000000..1e58c43c86 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-available.html @@ -0,0 +1,30 @@ + +The list of available images gets checked before deciding to make a load lazy + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url-2.html new file mode 100644 index 0000000000..e3a4a5f96e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url-2.html @@ -0,0 +1,52 @@ + + + Deferred loading=lazy images load relative to the document's base URL + at parse-time + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url.html new file mode 100644 index 0000000000..01ce961d0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-base-url.html @@ -0,0 +1,51 @@ + + + Deferred images with loading='lazy' use the original + base URL specified at parse-time + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-below-viewport-dynamic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-below-viewport-dynamic.html new file mode 100644 index 0000000000..78f18f0c23 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-below-viewport-dynamic.html @@ -0,0 +1,45 @@ + + + Below viewport images with loading='lazy' and changed to + loading='eager' load and do not block the window load event + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path-ref.html new file mode 100644 index 0000000000..05a60034ad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path.html new file mode 100644 index 0000000000..55f134a701 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-clip-path.html @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-crossorigin-change.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-crossorigin-change.sub.html new file mode 100644 index 0000000000..84efc7b0d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-crossorigin-change.sub.html @@ -0,0 +1,40 @@ + + + Deferred images with loading='lazy' use the latest crossorigin attribute + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https-ref.html new file mode 100644 index 0000000000..05a60034ad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html new file mode 100644 index 0000000000..809068dd05 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-data-url-to-https.html @@ -0,0 +1,24 @@ + + + + Lazy loaded Images with data url placeholders can be overwritten by a src change + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-different-crossorigin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-different-crossorigin.html new file mode 100644 index 0000000000..1ea46ffcc5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-different-crossorigin.html @@ -0,0 +1,63 @@ + + +Lazyload images cannot load immediately from the list of available images if their tuple doesn't match other images in that list + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-empty-src.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-empty-src.html new file mode 100644 index 0000000000..2a0aefea1d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-empty-src.html @@ -0,0 +1,25 @@ + + +Lazy loaded Images handle correctly when setting src to empty + +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-001.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-001.sub.html new file mode 100644 index 0000000000..eed3644650 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-001.sub.html @@ -0,0 +1,44 @@ + + +A below-viewport loading=lazy image in a cross origin iframe loads only + when scrolled into viewport + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-002.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-002.sub.html new file mode 100644 index 0000000000..85060d2193 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-cross-origin-iframe-002.sub.html @@ -0,0 +1,46 @@ + + +A loading=lazy image in a below-viewport cross-origin iframe loads only + when the cross-origin iframe is scrolled into view + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-script-disabled-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-script-disabled-iframe.html new file mode 100644 index 0000000000..fbcadd86c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-script-disabled-iframe.html @@ -0,0 +1,23 @@ + + +Images with loading='lazy' in script disabled iframe are not handled + as 'lazy' + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-far.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-far.html new file mode 100644 index 0000000000..065fa939bc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-far.html @@ -0,0 +1,49 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal-far.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal-far.html new file mode 100644 index 0000000000..20274310f1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal-far.html @@ -0,0 +1,52 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal.html new file mode 100644 index 0000000000..124dbaddf8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-horizontal.html @@ -0,0 +1,52 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-2.html new file mode 100644 index 0000000000..5e25f45275 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-2.html @@ -0,0 +1,57 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-3.html new file mode 100644 index 0000000000..0d6d95826b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-3.html @@ -0,0 +1,65 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-4.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-4.html new file mode 100644 index 0000000000..312e90bd49 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-4.html @@ -0,0 +1,58 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-5.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-5.html new file mode 100644 index 0000000000..77bb3004d3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested-5.html @@ -0,0 +1,61 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested.html new file mode 100644 index 0000000000..cc3e4d5e4b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller-nested.html @@ -0,0 +1,57 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller.html new file mode 100644 index 0000000000..17f0e7d17a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-scroller.html @@ -0,0 +1,49 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-viewport-dynamic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-viewport-dynamic.html new file mode 100644 index 0000000000..39dd5dc1e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-in-viewport-dynamic.html @@ -0,0 +1,40 @@ + + + In viewport images with loading='lazy' and changed to loading='eager' + do not block the window load event + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-document.html new file mode 100644 index 0000000000..ff7e83105c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-document.html @@ -0,0 +1,38 @@ + + +Moving loading='lazy' image into another top level document + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-into-script-disabled-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-into-script-disabled-iframe.html new file mode 100644 index 0000000000..79bfa24378 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-move-into-script-disabled-iframe.html @@ -0,0 +1,29 @@ + + +A loading='lazy' image starts loading when the element is moved into + an iframe where script is disabled + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html new file mode 100644 index 0000000000..20d52d4dfa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html @@ -0,0 +1,44 @@ + + + Images with loading='lazy' load when in the viewport + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multiple-times.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multiple-times.html new file mode 100644 index 0000000000..2d67150560 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multiple-times.html @@ -0,0 +1,60 @@ + + Images with loading='lazy' can be lazy loaded multiple times + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-negative-margin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-negative-margin.html new file mode 100644 index 0000000000..875160b4ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-negative-margin.html @@ -0,0 +1,61 @@ + + + Images with loading='lazy' defers images in a hidden area as a result + of negative margins + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-referrerpolicy-change.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-referrerpolicy-change.sub.html new file mode 100644 index 0000000000..110c36cca7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-referrerpolicy-change.sub.html @@ -0,0 +1,46 @@ + + + Deferred loading=lazy images are fetched with the latest + `referrerpolicy` attribute + + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-relevant-mutations.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-relevant-mutations.html new file mode 100644 index 0000000000..3a2662451e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-relevant-mutations.html @@ -0,0 +1,83 @@ + + + Relevant mutations on deferred loading=lazy images should not trigger + a request + + + + + + + + + +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio-ref.html new file mode 100644 index 0000000000..6de01a9b3b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio.html new file mode 100644 index 0000000000..662ada6909 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-aspect-ratio.html @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-ref.html new file mode 100644 index 0000000000..20fbb9b50e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow.html new file mode 100644 index 0000000000..fac2c2e8f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-slow.html @@ -0,0 +1,22 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-srcset.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-srcset.html new file mode 100644 index 0000000000..953d4af4ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-srcset.html @@ -0,0 +1,38 @@ + + +loading='lazy' image with srcset + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-subframe-detached-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-subframe-detached-crash.html new file mode 100644 index 0000000000..86a290d50d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-subframe-detached-crash.html @@ -0,0 +1,26 @@ + + +Crash when detaching a frame during a lazy-load operation + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-to-eager.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-to-eager.html new file mode 100644 index 0000000000..6246063981 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-to-eager.html @@ -0,0 +1,55 @@ + + + Below-viewport images with loading='lazy' load when set to + loading='eager' or the `loading` attribute is removed + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-use-list-of-available-images.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-use-list-of-available-images.html new file mode 100644 index 0000000000..f2a8a3542f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-use-list-of-available-images.html @@ -0,0 +1,62 @@ + + +Lazyload images can load immediately from the list of available images + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-zero-intersection-area.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-zero-intersection-area.html new file mode 100644 index 0000000000..9962ce7837 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-zero-intersection-area.html @@ -0,0 +1,19 @@ + + +Image with zero intersection area is lazy-loaded + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy.html new file mode 100644 index 0000000000..88f6549d96 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy.html @@ -0,0 +1,112 @@ + + + Images with loading='lazy' load only when in the viewport + + + + + + + + + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip-ref.html new file mode 100644 index 0000000000..f841dba31b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip-ref.html @@ -0,0 +1,22 @@ + + + + + Images with loading='lazy' load under subpixel-offset clips + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip.html new file mode 100644 index 0000000000..594d9bebe4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-subpixel-clip.html @@ -0,0 +1,25 @@ + + + + + Images with loading='lazy' load under subpixel-offset clips + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print-ref.html new file mode 100644 index 0000000000..160f9f50a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print-ref.html @@ -0,0 +1,8 @@ + + +FAIL diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print.html new file mode 100644 index 0000000000..4ad922ba00 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-srcdoc-relative-uri-print.html @@ -0,0 +1,6 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-picture-ancestor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-picture-ancestor.html new file mode 100644 index 0000000000..3518cab54d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-picture-ancestor.html @@ -0,0 +1,50 @@ + +img should only look at a parent picture element + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-src-in-synthetic-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-src-in-synthetic-document.html new file mode 100644 index 0000000000..24c5567fb8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-src-in-synthetic-document.html @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size-ref.html new file mode 100644 index 0000000000..56176c4b71 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size-ref.html @@ -0,0 +1,8 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size.html new file mode 100644 index 0000000000..bdeae0ac2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img-with-containment-and-size.html @@ -0,0 +1,24 @@ + + +Ensure images with containment and size are rendered properly + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img.complete.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img.complete.html new file mode 100644 index 0000000000..d8d5a84eb7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/img.complete.html @@ -0,0 +1,200 @@ + +DOM img complete Test + + + + + + + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invalid-src.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invalid-src.html new file mode 100644 index 0000000000..37ea8ce754 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invalid-src.html @@ -0,0 +1,32 @@ + + +Loading a non-parsing URL as an image should silently fail; triggering appropriate events + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invisible-image.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invisible-image.html new file mode 100644 index 0000000000..35ebbaa11a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/invisible-image.html @@ -0,0 +1,78 @@ + + + Test that below-viewport invisible images that are not marked + loading=lazy still load, and block the window load event + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-after.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-after.html new file mode 100644 index 0000000000..bb4c5991c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-after.html @@ -0,0 +1,21 @@ + + + + img ismap attribute coordinate origin + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +

                                                                                                                                                        Click inside the dashed rectangle

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-before.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-before.html new file mode 100644 index 0000000000..8349b62783 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-before.html @@ -0,0 +1,21 @@ + + + + img ismap attribute coordinate origin + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +

                                                                                                                                                        Click inside the dashed rectangle

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-inside.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-inside.html new file mode 100644 index 0000000000..fdecee9ace --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-inside.html @@ -0,0 +1,21 @@ + + + + img ismap attribute coordinate origin + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +

                                                                                                                                                        Click inside the dashed rectangle

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-manual.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-manual.html new file mode 100644 index 0000000000..4d77e677e4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-manual.html @@ -0,0 +1,78 @@ + + + + img ismap attribute coordinate origin + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-does-not-coalesce-in-flight-requests.sub.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-does-not-coalesce-in-flight-requests.sub.tentative.html new file mode 100644 index 0000000000..52e91bc087 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-does-not-coalesce-in-flight-requests.sub.tentative.html @@ -0,0 +1,49 @@ + + +List of available images does not coalesce in-flight requests + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-matching.https.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-matching.https.html new file mode 100644 index 0000000000..4843d21915 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/list-of-available-images-matching.https.html @@ -0,0 +1,68 @@ + + +List of available images tuple-matching logic + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/move-element-and-scroll.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/move-element-and-scroll.html new file mode 100644 index 0000000000..3c95fae5bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/move-element-and-scroll.html @@ -0,0 +1,36 @@ + + + Images with loading='lazy' load being moved to another document + and then scrolled to + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/natural-size-orientation.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/natural-size-orientation.html new file mode 100644 index 0000000000..662dc0804f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/natural-size-orientation.html @@ -0,0 +1,45 @@ + + +naturalWidth and naturalHeight on HTMLImageElement reflect orientation metadata + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/non-active-document.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/non-active-document.html new file mode 100644 index 0000000000..6072138cb3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/non-active-document.html @@ -0,0 +1,52 @@ + + +img in non-active document should not perform loads + + +
                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/nonexistent-image.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/nonexistent-image.html new file mode 100644 index 0000000000..f58569ede0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/nonexistent-image.html @@ -0,0 +1,21 @@ + + +Loading an nonexisting image should fail; triggering appropriate events + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-below-viewport-image-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-below-viewport-image-loading-lazy.html new file mode 100644 index 0000000000..401771565a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-below-viewport-image-loading-lazy.html @@ -0,0 +1,63 @@ + + + Below-viewport loading=lazy not-rendered images should never load, + even when scrolled into view + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-dimension-getter.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-dimension-getter.html new file mode 100644 index 0000000000..4d929fd8b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-dimension-getter.html @@ -0,0 +1,22 @@ + + +Image intrinsic dimensions are returned if the image isn't rendered + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-image-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-image-loading-lazy.html new file mode 100644 index 0000000000..25aaedb2b2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/not-rendered-image-loading-lazy.html @@ -0,0 +1,49 @@ + + + In-viewport loading=lazy not-rendered images should never load + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/null-image-source.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/null-image-source.html new file mode 100644 index 0000000000..8999276503 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/null-image-source.html @@ -0,0 +1,30 @@ + + +Null image source check for src, srcset and picture parent + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/picture-loading-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/picture-loading-lazy.html new file mode 100644 index 0000000000..08c01616bd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/picture-loading-lazy.html @@ -0,0 +1,64 @@ + + + Images with loading='lazy' in picture elements load when near the viewport + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations-lazy.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations-lazy.html new file mode 100644 index 0000000000..d3784671b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations-lazy.html @@ -0,0 +1,78 @@ + +img relevant mutations, lazy-loaded + + + + +
                                                                                                                                                        + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations.html new file mode 100644 index 0000000000..24e15543cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/relevant-mutations.html @@ -0,0 +1,628 @@ + +img relevant mutations + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/remove-element-and-scroll.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/remove-element-and-scroll.html new file mode 100644 index 0000000000..8e7fa1bfbf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/remove-element-and-scroll.html @@ -0,0 +1,32 @@ + + + Images with loading='lazy' load being removed and then scrolled to + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/blue-10.png b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/blue-10.png new file mode 100644 index 0000000000..62949e08d8 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/blue-10.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg new file mode 100644 index 0000000000..a4f14f54d6 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/green.png b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/green.png new file mode 100644 index 0000000000..25b76c3c6f Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/green.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-and-stash.py b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-and-stash.py new file mode 100644 index 0000000000..d16a3e591d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-and-stash.py @@ -0,0 +1,44 @@ +# This is a simple implementation of a server-side stash that supports two +# operations: +# - increment: +# Increments a value in the stash keyed by a given uuid, and returns an +# image file +# - read: +# Returns the value in the stash keyed by a given uuid or 0 otherwise. +# This is a read-only operation, and does not remove the value from the +# stash as-is the default WPT stash behavior: +# https://web-platform-tests.org/tools/wptserve/docs/stash.html. + +import os + +from wptserve.utils import isomorphic_decode + +def main(request, response): + if b"increment" in request.GET: + uuid = request.GET[b"increment"] + + # First, increment the stash value keyed by `uuid`, and write it back to the + # stash. Writing it back to the stash is necessary since `take()` actually + # removes the value whereas we want to increment it. + stash_value = request.server.stash.take(uuid) + if stash_value is None: + stash_value = 0 + request.server.stash.put(uuid, stash_value + 1) + + # Return a basic image. + response_headers = [(b"Content-Type", b"image/png")] + image_path = os.path.join(os.path.dirname(isomorphic_decode(__file__)), u"image.png") + return (200, response_headers, open(image_path, mode='rb').read()) + + elif b"read" in request.GET: + uuid = request.GET[b"read"] + stash_value = request.server.stash.take(uuid) + + if stash_value is None: + stash_value = 0 + # Write the stash value keyed by `uuid` back to the stash. This is necessary + # because `take()` actually removes it, but we want a read-only read. + request.server.stash.put(uuid, stash_value); + return (200, [], str(stash_value)) + + return (404 , [], "Not found") diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-below-viewport.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-below-viewport.html new file mode 100644 index 0000000000..f25bd6f4d0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-below-viewport.html @@ -0,0 +1,22 @@ + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-in-viewport.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-in-viewport.html new file mode 100644 index 0000000000..bafdacc883 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image-loading-lazy-in-viewport.html @@ -0,0 +1,20 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image.png b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image.png new file mode 100644 index 0000000000..b712825093 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/image.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/newwindow.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/newwindow.html new file mode 100644 index 0000000000..735b8f6213 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/newwindow.html @@ -0,0 +1,2 @@ + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/red.png b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/red.png new file mode 100644 index 0000000000..57bf3ddc52 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/red.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/referrer-checker-img.py b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/referrer-checker-img.py new file mode 100644 index 0000000000..bb2071cb97 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/referrer-checker-img.py @@ -0,0 +1,14 @@ +import os + +from wptserve.utils import isomorphic_decode + +# Returns a valid image response when request's |referrer| matches +# |expected_referrer|. +def main(request, response): + referrer = request.headers.get(b"referer", b"") + expected_referrer = request.GET.first(b"expected_referrer", b"") + response_headers = [(b"Content-Type", b"image/png")] + if referrer == expected_referrer: + image_path = os.path.join(os.path.dirname(isomorphic_decode(__file__)), u"image.png") + return (200, response_headers, open(image_path, mode='rb').read()) + return (404, response_headers, u"Not found") diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js new file mode 100644 index 0000000000..8bd079f790 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js @@ -0,0 +1,20 @@ +addEventListener('install', (event) => { + skipWaiting(); +}); + +addEventListener('activate', (event) => { + event.waitUntil(clients.claim()); +}); + +async function broadcast(msg) { + const allClients = await clients.matchAll(); + for (const client of allClients) { + client.postMessage(msg); + } +} + +addEventListener('fetch', (event) => { + event.waitUntil( + broadcast({ url: event.request.url, mode: event.request.mode }) + ) +}); diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js.headers b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js.headers new file mode 100644 index 0000000000..3c534471c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/resources/sw.js.headers @@ -0,0 +1 @@ +Service-Worker-Allowed: /html/semantics/embedded-content/the-img-element/ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print-ref.html new file mode 100644 index 0000000000..7189a57642 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print-ref.html @@ -0,0 +1,4 @@ + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print.html new file mode 100644 index 0000000000..60b061f14a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/responsive-image-select-print.html @@ -0,0 +1,12 @@ + +Test print result of responsive image + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/scrolling-below-viewport-image-lazy-loading-in-iframe.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/scrolling-below-viewport-image-lazy-loading-in-iframe.html new file mode 100644 index 0000000000..3c26323426 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/scrolling-below-viewport-image-lazy-loading-in-iframe.html @@ -0,0 +1,32 @@ + +Scrolling a lazy loaded image into view in an iframe + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/implicit-sizes-ignores-width.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/implicit-sizes-ignores-width.html new file mode 100644 index 0000000000..db61db351e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/implicit-sizes-ignores-width.html @@ -0,0 +1,19 @@ + +Implicit sizes ignores width + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none.html new file mode 100644 index 0000000000..6aa77ebf85 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none.html @@ -0,0 +1,7 @@ + +img parse a sizes attribute (display:none) + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode.html new file mode 100644 index 0000000000..2150192d29 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode.html @@ -0,0 +1,7 @@ + +img parse a sizes attribute (quirks mode) + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode.html new file mode 100644 index 0000000000..6e70c88396 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode.html @@ -0,0 +1,7 @@ + +img parse a sizes attribute (standards mode) + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html new file mode 100644 index 0000000000..ab3f69e058 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html @@ -0,0 +1,7 @@ + +img parse a sizes attribute (width:1000px) + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/reference/sizes-auto-rendering-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/reference/sizes-auto-rendering-ref.html new file mode 100644 index 0000000000..221930fddb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/reference/sizes-auto-rendering-ref.html @@ -0,0 +1,8 @@ + +Auto sizes rendering + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-2.html new file mode 100644 index 0000000000..75d1884e34 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-2.html @@ -0,0 +1,25 @@ + + +Auto sizes rendering + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-3.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-3.html new file mode 100644 index 0000000000..71ed90ebbe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-3.html @@ -0,0 +1,25 @@ + + +Auto sizes rendering + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-dynamic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-dynamic.html new file mode 100644 index 0000000000..901c6f2e09 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering-dynamic.html @@ -0,0 +1,38 @@ + + +Auto sizes dynamic rendering + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering.html new file mode 100644 index 0000000000..e972f69c20 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto-rendering.html @@ -0,0 +1,26 @@ + + +Auto sizes rendering + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto.html new file mode 100644 index 0000000000..6c1a741f2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-auto.html @@ -0,0 +1,153 @@ + +img parse a sizes attribute: sizes=auto + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001-ref.html new file mode 100644 index 0000000000..68466ae94d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001-ref.html @@ -0,0 +1,4 @@ + +Test reference + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001.html new file mode 100644 index 0000000000..51f8145bf9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001.html @@ -0,0 +1,20 @@ + + +Image intrinsic size specified via sizes attribute reacts properly to media changes + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002.html new file mode 100644 index 0000000000..6c64b3da39 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002.html @@ -0,0 +1,33 @@ + + +Image intrinsic size specified via sizes attribute reacts properly to media changes in Shadow DOM + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/parse-a-sizes-attribute.js b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/parse-a-sizes-attribute.js new file mode 100644 index 0000000000..62ad00a468 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/parse-a-sizes-attribute.js @@ -0,0 +1,29 @@ +setup({explicit_done:true}); + +function check(p, iframe) { + var current = p.firstElementChild; + var ref_sizes = current.getAttribute('sizes'); + var expect = current.currentSrc; + if (expect) { + expect = expect.split('?')[0]; + } + while (current = current.nextElementSibling) { + test(function() { + if (expect === '' || expect === null || expect === undefined) { + assert_unreached('ref currentSrc was ' + format_value(expect)); + } + var got = current.currentSrc; + assert_greater_than(got.indexOf('?'), -1, 'expected a "?" in currentSrc'); + got = got.split('?')[0]; + assert_equals(got, expect); + }, current.outerHTML + ' ref sizes=' + format_value(ref_sizes) + ' (' + iframe.getAttribute('data-desc') + ')'); + } +} + +onload = function() { + var iframe = document.querySelector('iframe'); + [].forEach.call(iframe.contentDocument.querySelectorAll('p'), function(p) { + check(p, iframe); + }); + done(); +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html new file mode 100644 index 0000000000..1f80ad2f91 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html @@ -0,0 +1,186 @@ + + + + +

                                                                                                                                                        + + +

                                                                                                                                                        + + +

                                                                                                                                                        + + +

                                                                                                                                                        + + + +

                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/source-media-outside-doc.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/source-media-outside-doc.html new file mode 100644 index 0000000000..5997e14e4b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/source-media-outside-doc.html @@ -0,0 +1,50 @@ + +Image source selection using media queries is performed for img elements outside the document + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/avoid-reload-on-resize.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/avoid-reload-on-resize.html new file mode 100644 index 0000000000..52366dcaa7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/avoid-reload-on-resize.html @@ -0,0 +1,20 @@ + +Avoid srcset image reloads when viewport resizes + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/common.js b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/common.js new file mode 100644 index 0000000000..d4d2c7534c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/common.js @@ -0,0 +1,25 @@ +setup({explicit_done:true}); + +function check(img) { + var name = format_value(img.getAttribute('srcset')); + if (img.hasAttribute('sizes')) { + name += ' sizes=' + format_value(img.getAttribute('sizes')); + } + if (img.hasAttribute('data-desc')) { + name += ' (' + img.getAttribute('data-desc') + ')'; + } + test(function() { + var expect = img.dataset.expect; + if ('resolve' in img.dataset) { + var a = document.createElement('a'); + a.href = expect; + expect = a.href; + } + assert_equals(img.currentSrc, expect); + }, name); +} + +onload = function() { + [].forEach.call(document.images, check); + done(); +}; diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html new file mode 100644 index 0000000000..ce1e4cebe5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html @@ -0,0 +1,245 @@ + +img parse a srcset attribute + + + +

                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png new file mode 100644 index 0000000000..d26878c9f2 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png differ diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png.headers b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png.headers new file mode 100644 index 0000000000..edaec7ad15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/image.png.headers @@ -0,0 +1,3 @@ +Cache-Control: no-store + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/resized.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/resized.html new file mode 100644 index 0000000000..6fb6847a66 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/resources/resized.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html new file mode 100644 index 0000000000..292395d3ae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html @@ -0,0 +1,20 @@ + +img select an image source + + + +
                                                                                                                                                        + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic.html new file mode 100644 index 0000000000..2cc74e2b8f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic.html @@ -0,0 +1,25 @@ + +source element in picture handles dynamic media change correctly. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/external-sheet.svg b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/external-sheet.svg new file mode 100644 index 0000000000..fd2eda7164 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/external-sheet.svg @@ -0,0 +1,4 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/red-bg.css b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/red-bg.css new file mode 100644 index 0000000000..da9af10628 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/red-bg.css @@ -0,0 +1,2 @@ +:root { background: red } + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/relevant-mutations.js b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/relevant-mutations.js new file mode 100644 index 0000000000..7105b03708 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/support/relevant-mutations.js @@ -0,0 +1,15 @@ +setup({explicit_done:true}); + +function t(desc, func, expect) { + async_test(function() { + var img = document.querySelector('[data-desc="' + desc + '"]'); + img.onload = img.onerror = this.unreached_func('update the image data was run'); + if (expect == 'timeout') { + setTimeout(this.step_func_done(), 1000); + } else { + img['on' + expect] = this.step_func_done(); + setTimeout(this.unreached_func('update the image data didn\'t run'), 1000); + } + func.call(this, img); + }, desc); +} diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet-ref.html new file mode 100644 index 0000000000..fdab582933 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet-ref.html @@ -0,0 +1,4 @@ + +Test reference +

                                                                                                                                                        You should see a green square below.

                                                                                                                                                        +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet.html new file mode 100644 index 0000000000..a09dd7cc54 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/svg-img-with-external-stylesheet.html @@ -0,0 +1,6 @@ + +An img element with an svg src should not load external resources from the svg file. + + +

                                                                                                                                                        You should see a green square below.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-media.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-media.html new file mode 100644 index 0000000000..dd679ef571 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-media.html @@ -0,0 +1,32 @@ + + +img update media + + + + +
                                                                                                                                                        + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-src-complete.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-src-complete.html new file mode 100644 index 0000000000..de3926a296 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-src-complete.html @@ -0,0 +1,25 @@ + + +Changing the img src should retain the 'complete' property + + +

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/current-request-microtask.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/current-request-microtask.html new file mode 100644 index 0000000000..125b37eadb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/current-request-microtask.html @@ -0,0 +1,38 @@ + +An img's current request should be updated in a microtask after selecting an image source + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve.html new file mode 100644 index 0000000000..959ceaa979 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve.html @@ -0,0 +1,25 @@ + +img update the image data: fail to resolve URL + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-source-set.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-source-set.html new file mode 100644 index 0000000000..063667baa9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/update-the-source-set.html @@ -0,0 +1,140 @@ + +img update the source set + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        foo
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        foo
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/usemap-casing.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/usemap-casing.html new file mode 100644 index 0000000000..c28f667ff3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/usemap-casing.html @@ -0,0 +1,93 @@ + + +img usemap case-sensitive + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/block-object-with-ruby-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/block-object-with-ruby-crash.html new file mode 100644 index 0000000000..481a7408e4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/block-object-with-ruby-crash.html @@ -0,0 +1,11 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin.html new file mode 100644 index 0000000000..3d1077538e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin.html @@ -0,0 +1,17 @@ + + +Test that contentDocument/getSVGDocument() return null for a cross-origin document. + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/historical.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/historical.html new file mode 100644 index 0000000000..c7a577a9d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/historical.html @@ -0,0 +1,33 @@ + +Historical object element features should not be supported + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-attributes.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-attributes.html new file mode 100644 index 0000000000..c630d8055c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-attributes.html @@ -0,0 +1,60 @@ + + +HTML Test: object - attributes + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-construct-in-document-with-null-browsing-context-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-construct-in-document-with-null-browsing-context-crash.html new file mode 100644 index 0000000000..7248368656 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-construct-in-document-with-null-browsing-context-crash.html @@ -0,0 +1,11 @@ +HTMLObjectElement: construct in a document with a null browsing context + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-events.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-events.html new file mode 100644 index 0000000000..38f92c3d35 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-events.html @@ -0,0 +1,81 @@ + + +HTML Test: object-events + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub.html new file mode 100644 index 0000000000..09061e0349 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub.html @@ -0,0 +1,68 @@ + + +Test that <object> renders its own fallback. + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-handler.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-handler.html new file mode 100644 index 0000000000..a24554e0cc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-handler.html @@ -0,0 +1,33 @@ + + +HTML Test: object - handler + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html new file mode 100644 index 0000000000..2bf84c2946 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-ignored-in-media-element.html @@ -0,0 +1,22 @@ + + +HTML Test: The embed element represents a document + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-display-none-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-display-none-load-event.html new file mode 100644 index 0000000000..c8369365af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-display-none-load-event.html @@ -0,0 +1,14 @@ + + + +Test that an object in a display:none subtree does not block the load event + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-object-fallback-2.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-object-fallback-2.html new file mode 100644 index 0000000000..47cf801693 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-in-object-fallback-2.html @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url-ref.html new file mode 100644 index 0000000000..7eb9256b0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url-ref.html @@ -0,0 +1,39 @@ + + + +object element containing param element specifying a URL + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url.html new file mode 100644 index 0000000000..5f1e54c4d9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-param-url.html @@ -0,0 +1,41 @@ + + + +object element containing param element specifying a URL + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-remove-param-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-remove-param-crash.html new file mode 100644 index 0000000000..e1e2ebb4e6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-remove-param-crash.html @@ -0,0 +1,11 @@ + +HTML Test: object - crash removing a param after changing its style + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity.html new file mode 100644 index 0000000000..44574ffd11 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity.html @@ -0,0 +1,17 @@ + +object setCustomValidity + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test0.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test0.html new file mode 100644 index 0000000000..17df71daa2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test0.html @@ -0,0 +1,10 @@ + + +HTML Test + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test1.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test1.html new file mode 100644 index 0000000000..cf2423275e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/test1.html @@ -0,0 +1,9 @@ + + +HTML Test + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/usemap-casing.html b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/usemap-casing.html new file mode 100644 index 0000000000..114a472fb6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-object-element/usemap-casing.html @@ -0,0 +1,82 @@ + + +object usemap case-sensitive + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm new file mode 100644 index 0000000000..f9426a529c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm @@ -0,0 +1,71 @@ + + + +video element - intrinsic sizes + + + + + +

                                                                                                                                                        spec reference

                                                                                                                                                        + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html new file mode 100644 index 0000000000..e1f35768bc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html @@ -0,0 +1,42 @@ + + + +video element resizing during playback + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-import-to-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-import-to-inactive-document-crash.html new file mode 100644 index 0000000000..1e14388efd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-import-to-inactive-document-crash.html @@ -0,0 +1,7 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto-ref.html new file mode 100644 index 0000000000..66b42e4025 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto-ref.html @@ -0,0 +1,5 @@ + + + Verifies that video poster is shown even if video element has 'preload="auto"' attribute + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto.html new file mode 100644 index 0000000000..95e32bb77c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-poster-shown-preload-auto.html @@ -0,0 +1,10 @@ + + + Verifies that video poster is shown even if video element has 'preload="auto"' attribute + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-tabindex.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-tabindex.html new file mode 100644 index 0000000000..3044874789 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video-tabindex.html @@ -0,0 +1,18 @@ + +tabindex on video elements + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content-ref.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content-ref.htm new file mode 100644 index 0000000000..c02abb1236 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content-ref.htm @@ -0,0 +1,12 @@ + + + + HTML5 Media Elements: Content inside the 'video' element is not shown to the user. + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_image.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_image.htm new file mode 100644 index 0000000000..0808d894aa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_image.htm @@ -0,0 +1,16 @@ + + + + HTML5 Media Elements: Content inside the 'video' element is not shown to the user. + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_text.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_text.htm new file mode 100644 index 0000000000..639fb73f8f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_content_text.htm @@ -0,0 +1,16 @@ + + + + HTML5 Media Elements: Content inside the 'video' element is not shown to the user. + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_crash_empty_src.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_crash_empty_src.html new file mode 100644 index 0000000000..3aecb4e1eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_crash_empty_src.html @@ -0,0 +1,29 @@ + + + + HTML5 Media Elements: An empty src should not crash the player. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster-ref.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster-ref.htm new file mode 100644 index 0000000000..78c03626e1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster-ref.htm @@ -0,0 +1,5 @@ + + +Reference for poster tests + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm new file mode 100644 index 0000000000..bec2b0fba7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm @@ -0,0 +1,12 @@ + + +The 'HTMLVideoElement' interface supports setting 'poster' to an absolute URL + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm new file mode 100644 index 0000000000..4faca61c40 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm @@ -0,0 +1,12 @@ + + +The 'HTMLVideoElement' interface supports setting 'poster' to a relative URL + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused-ref.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused-ref.html new file mode 100644 index 0000000000..8556aabf23 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused-ref.html @@ -0,0 +1,8 @@ + + +Video elements should initially be paused + + + +

                                                                                                                                                        The following video element should be paused. (All clocks at zero).

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused.html new file mode 100644 index 0000000000..b2725b04aa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_initially_paused.html @@ -0,0 +1,21 @@ + + +Video elements should initially be paused + + + + + +

                                                                                                                                                        The following video element should be paused. (All clocks at zero).

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_size_preserved_after_ended.html b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_size_preserved_after_ended.html new file mode 100644 index 0000000000..9b2783c930 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-video-element/video_size_preserved_after_ended.html @@ -0,0 +1,30 @@ + + + + HTML5 Media Elements: The size of the video shouldn't be lost after an 'ended' event. + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/META.yml b/testing/web-platform/tests/html/semantics/forms/META.yml new file mode 100644 index 0000000000..ce84e4ae4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/META.yml @@ -0,0 +1,2 @@ +suggested_reviewers: + - tkent-google diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html new file mode 100644 index 0000000000..7bb7aae3b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html @@ -0,0 +1,30 @@ + + +Submitting element directionality: the dirname attribute + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-only-if-applies.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-only-if-applies.html new file mode 100644 index 0000000000..8af6826fa1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-only-if-applies.html @@ -0,0 +1,80 @@ + + + + + Submitting element directionality: the dirname attribute + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-auto.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-auto.html new file mode 100644 index 0000000000..02aeb79176 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-auto.html @@ -0,0 +1,31 @@ + + +Submitting element directionality: the dirname attribute + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-inherited.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-inherited.html new file mode 100644 index 0000000000..0c5331f0ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-inherited.html @@ -0,0 +1,32 @@ + + +Submitting element directionality: the dirname attribute + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-manual.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-manual.html new file mode 100644 index 0000000000..c5f683101d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/dirname-rtl-manual.html @@ -0,0 +1,29 @@ + + +Submitting element directionality: the dirname attribute (rtl) + + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Switch to a right-to-left writing direction, enter a text in the input and textarea, and submit the form.

                                                                                                                                                        +

                                                                                                                                                        Test passes if the word "PASS" appears below

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html new file mode 100644 index 0000000000..14443e4099 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html @@ -0,0 +1,84 @@ + +HTMLFormElement: the disabled attribute + + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html new file mode 100644 index 0000000000..4510807c2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html @@ -0,0 +1,93 @@ + + + + + HTML Test: formAction_document_address + + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formaction.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formaction.html new file mode 100644 index 0000000000..82798eaa84 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/formaction.html @@ -0,0 +1,42 @@ + + + formaction on button element + + + + + + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-iframe.html b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-iframe.html new file mode 100644 index 0000000000..b5ed7e3d9a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-iframe.html @@ -0,0 +1,4 @@ + + +Submitting element directionality: the dirname attribute support + diff --git a/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname.js b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname.js new file mode 100644 index 0000000000..f0e97bc301 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname.js @@ -0,0 +1,12 @@ +function onIframeLoadedDone(t, cb, selector="iframe") { + const iframe = document.querySelector(selector); + iframe.addEventListener("load", function() { + // The initial about:blank load event can be fired before the form navigation occurs. + // See https://github.com/whatwg/html/issues/490 for more information. + if(iframe.contentWindow.location.href == "about:blank") { return; } + + const params = new URLSearchParams(iframe.contentWindow.location.search); + t.step(() => cb(params)) + t.done(); + }); +} diff --git a/testing/web-platform/tests/html/semantics/forms/beforeinput.tentative.html b/testing/web-platform/tests/html/semantics/forms/beforeinput.tentative.html new file mode 100644 index 0000000000..7aa51a2523 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/beforeinput.tentative.html @@ -0,0 +1,58 @@ + + +Test the onbeforeinput attribute + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-checkValidity.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-checkValidity.html new file mode 100644 index 0000000000..2e790c75d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-checkValidity.html @@ -0,0 +1,145 @@ + + +The constraint validation API Test: element.checkValidity() + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-reportValidity.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-reportValidity.html new file mode 100644 index 0000000000..c68e21c9d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-reportValidity.html @@ -0,0 +1,145 @@ + + +The constraint validation API Test: element.reportValidity() + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validate.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validate.html new file mode 100644 index 0000000000..e32fd90330 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validate.html @@ -0,0 +1,127 @@ + + +Constraint validation + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-badInput.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-badInput.html new file mode 100644 index 0000000000..8f6153b923 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-badInput.html @@ -0,0 +1,46 @@ + + +The constraint validation API Test: element.validity.badInput + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-customError.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-customError.html new file mode 100644 index 0000000000..2ae6240ace --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-customError.html @@ -0,0 +1,48 @@ + + +The constraint validation API Test: element.validity.customError + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html new file mode 100644 index 0000000000..286001b965 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html @@ -0,0 +1,53 @@ + + +The constraint validation API Test: element.validity.patternMismatch + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-weekmonth.html new file mode 100644 index 0000000000..5a1478829f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-weekmonth.html @@ -0,0 +1,47 @@ + + +The constraint validation API Test: element.validity.rangeOverflow + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html new file mode 100644 index 0000000000..98847e70ff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html @@ -0,0 +1,89 @@ + + +The constraint validation API Test: element.validity.rangeOverflow + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-weekmonth.html new file mode 100644 index 0000000000..9ddf2565c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-weekmonth.html @@ -0,0 +1,47 @@ + + +The constraint validation API Test: element.validity.rangeUnderflow + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html new file mode 100644 index 0000000000..c97af1b671 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html @@ -0,0 +1,87 @@ + + +The constraint validation API Test: element.validity.rangeUnderflow + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html new file mode 100644 index 0000000000..4d4b4328f4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html @@ -0,0 +1,81 @@ + + +The constraint validation API Test: element.validity.stepMismatch + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html new file mode 100644 index 0000000000..aa787d471d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html @@ -0,0 +1,50 @@ + + +The constraint validation API Test: element.validity.tooLong + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooShort.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooShort.html new file mode 100644 index 0000000000..b6c0e43992 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-tooShort.html @@ -0,0 +1,52 @@ + + +The constraint validation API Test: element.validity.tooShort + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html new file mode 100644 index 0000000000..40444277cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html @@ -0,0 +1,41 @@ + + +The constraint validation API Test: element.validity.typeMismatch + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid-weekmonth.html new file mode 100644 index 0000000000..3f47d391de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid-weekmonth.html @@ -0,0 +1,37 @@ + + +The constraint validation API Test: element.validity.valid + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid.html new file mode 100644 index 0000000000..009b7a8e5d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valid.html @@ -0,0 +1,110 @@ + + +The constraint validation API Test: element.validity.valid + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-weekmonth.html new file mode 100644 index 0000000000..2078c2ec13 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-weekmonth.html @@ -0,0 +1,55 @@ + + + +The constraint validation API Test: element.validity.valueMissing + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html new file mode 100644 index 0000000000..c586c6debe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html @@ -0,0 +1,147 @@ + + +The constraint validation API Test: element.validity.valueMissing + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate-datalist.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate-datalist.html new file mode 100644 index 0000000000..b6b14c6304 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate-datalist.html @@ -0,0 +1,67 @@ + + +The constraint validation API Test: element.willValidate + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate.html b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate.html new file mode 100644 index 0000000000..c1abf76b65 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/form-validation-willValidate.html @@ -0,0 +1,96 @@ + + +The constraint validation API Test: element.willValidate + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/infinite_backtracking.tentative.html b/testing/web-platform/tests/html/semantics/forms/constraints/infinite_backtracking.tentative.html new file mode 100644 index 0000000000..52f6e316b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/infinite_backtracking.tentative.html @@ -0,0 +1,12 @@ + + +The infinite pattern validation test + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/input-maxlength-emoji.html b/testing/web-platform/tests/html/semantics/forms/constraints/input-maxlength-emoji.html new file mode 100644 index 0000000000..068abad936 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/input-maxlength-emoji.html @@ -0,0 +1,15 @@ + + +Tests pasting an emoji in a text field with a maxlength attribute + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html b/testing/web-platform/tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html new file mode 100644 index 0000000000..2100fb7fb6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html @@ -0,0 +1,18 @@ + + +Number input step dynamic value attribute change + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/input-pattern-dynamic-value.html b/testing/web-platform/tests/html/semantics/forms/constraints/input-pattern-dynamic-value.html new file mode 100644 index 0000000000..58e566c738 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/input-pattern-dynamic-value.html @@ -0,0 +1,17 @@ + + +Pattern dynamic value attribute change + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/inputwillvalidate.html b/testing/web-platform/tests/html/semantics/forms/constraints/inputwillvalidate.html new file mode 100644 index 0000000000..909fd889bb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/inputwillvalidate.html @@ -0,0 +1,26 @@ + + + willValidate property on the input element + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/number-input-lang-validationMessage-crash.html b/testing/web-platform/tests/html/semantics/forms/constraints/number-input-lang-validationMessage-crash.html new file mode 100644 index 0000000000..7affb1d65b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/number-input-lang-validationMessage-crash.html @@ -0,0 +1,15 @@ + +Should not assert or crash + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/radio-valueMissing.html b/testing/web-platform/tests/html/semantics/forms/constraints/radio-valueMissing.html new file mode 100644 index 0000000000..a02b6b9645 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/radio-valueMissing.html @@ -0,0 +1,90 @@ + + + + valueMissing property on the input[type=radio] element + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/reportValidity-crash.html b/testing/web-platform/tests/html/semantics/forms/constraints/reportValidity-crash.html new file mode 100644 index 0000000000..d6bab924ad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/reportValidity-crash.html @@ -0,0 +1,37 @@ + + + + + + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/support/validator.js b/testing/web-platform/tests/html/semantics/forms/constraints/support/validator.js new file mode 100644 index 0000000000..aa43b3a2f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/support/validator.js @@ -0,0 +1,481 @@ +var validator = { + + test_tooLong: function(ctl, data) { + var self = this; + test(function() { + self.pre_check(ctl, 'tooLong'); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.tooLong, + 'The validity.tooLong should be true' + condStr); + else + assert_false( + ctl.validity.tooLong, + 'The validity.tooLong should be false' + condStr); + }); + }, data.name); + }, + + test_tooShort: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "tooShort"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.tooShort, + 'The validity.tooShort should be true' + condStr); + else + assert_false( + ctl.validity.tooShort, + 'The validity.tooShort should be false' + condStr); + }); + }, data.name); + }, + + test_patternMismatch: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "patternMismatch"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.patternMismatch, + 'The validity.patternMismatch should be true' + condStr); + else + assert_false( + ctl.validity.patternMismatch, + 'The validity.patternMismatch should be false' + condStr); + }); + }, data.name); + }, + + test_valueMissing: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "valueMissing"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.valueMissing, + 'The validity.valueMissing should be true' + condStr); + else + assert_false( + ctl.validity.valueMissing, + 'The validity.valueMissing should be false' + condStr); + }); + }, data.name); + }, + + test_typeMismatch: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "typeMismatch"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.typeMismatch, + 'The validity.typeMismatch should be true' + condStr); + else + assert_false( + ctl.validity.typeMismatch, + 'The validity.typeMismatch should be false' + condStr); + }); + }, data.name); + }, + + test_rangeOverflow: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "rangeOverflow"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.rangeOverflow, + 'The validity.rangeOverflow should be true' + condStr); + else + assert_false( + ctl.validity.rangeOverflow, + 'The validity.rangeOverflow should be false' + condStr); + }); + }, data.name); + }, + + test_rangeUnderflow: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "rangeUnderflow"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.rangeUnderflow, + 'The validity.rangeUnderflow should be true' + condStr); + else + assert_false( + ctl.validity.rangeUnderflow, + 'The validity.rangeUnderflow should be false' + condStr); + }); + }, data.name); + }, + + test_stepMismatch: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "stepMismatch"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.stepMismatch, + 'The validity.stepMismatch should be true' + condStr); + else + assert_false( + ctl.validity.stepMismatch, + 'The validity.stepMismatch should be false' + condStr); + }); + }, data.name); + }, + + test_badInput: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "badInput"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.badInput, + 'The validity.badInput should be true' + condStr); + else + assert_false( + ctl.validity.badInput, + 'The validity.badInput should be false' + condStr); + }); + }, data.name); + }, + + test_customError: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "customError"); + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) { + assert_true( + ctl.validity.customError, + 'The validity.customError attribute should be true' + condStr); + // validationMessage returns the empty string if ctl is barred from + // constraint validation, which happens if ctl is disabled or readOnly. + if (ctl.disabled || ctl.readOnly) { + assert_equals( + ctl.validationMessage, '', + 'The validationMessage attribute must be empty' + condStr); + } else { + assert_equals( + ctl.validationMessage, data.conditions.message, + 'The validationMessage attribute should be \'' + + data.conditions.message + '\'' + condStr); + } + } else { + assert_false( + ctl.validity.customError, + 'The validity.customError attribute should be false' + condStr); + assert_equals( + ctl.validationMessage, '', + 'The validationMessage attribute must be empty' + condStr); + } + }); + }, data.name); + }, + + test_isValid: function(ctl, data) { + var self = this; + test(function () { + self.iterate_over(ctl, data).forEach(function(val) { + const {ctl, expected, condStr} = val; + if (expected) + assert_true( + ctl.validity.valid, + 'The validity.valid should be true' + condStr); + else + assert_false( + ctl.validity.valid, + 'The validity.valid should be false' + condStr); + }); + }, data.name); + }, + + test_willValidate: function(ctl, data) { + var self = this; + test(function () { + self.pre_check(ctl, "willValidate"); + self.set_conditions(ctl, data.conditions); + if (data.ancestor) { + var dl = document.createElement("datalist"); + dl.appendChild(ctl); + } + + if (data.expected) + assert_true(ctl.willValidate, "The willValidate attribute should be true."); + else + assert_false(ctl.willValidate, "The willValidate attribute should be false."); + }, data.name); + }, + + test_checkValidity: function(ctl, data) { + var self = this; + test(function () { + var eventFired = false; + self.pre_check(ctl, "checkValidity"); + self.set_conditions(ctl, data.conditions); + if (data.dirty) + self.set_dirty(ctl); + + on_event(ctl, "invalid", function(e){ + assert_equals(e.type, "invalid", "The invalid event should be fired."); + eventFired = true; + }); + + if (data.expected) { + assert_true(ctl.checkValidity(), "The checkValidity method should be true."); + assert_false(eventFired, "The invalid event should not be fired."); + } else { + assert_false(ctl.checkValidity(), "The checkValidity method should be false."); + assert_true(eventFired, "The invalid event should be fired."); + } + }, data.name); + + test(function () { + var fm = document.createElement("form"); + var ctl2 = ctl.cloneNode(true); + + self.pre_check(ctl, "checkValidity"); + self.set_conditions(ctl2, data.conditions); + fm.appendChild(ctl2); + document.body.appendChild(fm); + if (data.dirty) + self.set_dirty(ctl2); + + var result = fm.checkValidity(); + document.body.removeChild(fm); + + if (data.expected) + assert_true(result, "The checkValidity method of the element's form owner should return true."); + else + assert_false(result, "The checkValidity method of the element's form owner should return false."); + }, data.name + " (in a form)"); + }, + + test_reportValidity: function(ctl, data) { + var self = this; + test(function () { + var eventFired = false; + + self.pre_check(ctl, "reportValidity"); + self.set_conditions(ctl, data.conditions); + if (data.dirty) + self.set_dirty(ctl); + + on_event(ctl, "invalid", function(e){ + assert_equals(e.type, "invalid", "The invalid event should be fired."); + eventFired = true; + }); + + if (data.expected) { + assert_true(ctl.reportValidity(), "The reportValidity method should be true."); + assert_false(eventFired, "The invalid event should not be fired."); + } else { + assert_false(ctl.reportValidity(), "The reportValidity method should be false."); + assert_true(eventFired, "The invalid event should be fired."); + } + }, data.name); + + test(function () { + var fm = document.createElement("form"); + var ctl2 = ctl.cloneNode(true); + + self.pre_check(ctl, "reportValidity"); + self.set_conditions(ctl2, data.conditions); + fm.appendChild(ctl2); + document.body.appendChild(fm); + if (data.dirty) + self.set_dirty(ctl2); + + var result = fm.reportValidity(); + document.body.removeChild(fm); + + if (data.expected) + assert_true(result, "The reportValidity method of the element's form owner should return true."); + else + assert_false(result, "The reportValidity method of the element's form owner should return false."); + }, data.name + " (in a form)"); + }, + + set_conditions: function(ctl, obj) { + [ + "checked", + "disabled", + "max", + "maxlength", + "min", + "minlength", + "multiple", + "pattern", + "readonly", + "required", + "selected", + "step", + "value" + ].forEach(function(item) { + ctl.removeAttribute(item); + }); + for (var attr in obj) { + if (attr === "message") + ctl.setCustomValidity(obj[attr]); + else if (attr === "checked" || obj[attr] || obj[attr] === "") + ctl[attr] = obj[attr]; + } + }, + + set_dirty: function(ctl) { + ctl.focus(); + var old_value = ctl.value; + ctl.value = "a"; + ctl.value = old_value; + }, + + pre_check: function(ctl, item) { + switch (item) { + case "willValidate": + assert_true(item in ctl, "The " + item + " attribute doesn't exist."); + break; + case "checkValidity": + case "reportValidity": + assert_true(item in ctl, "The " + item + " method doesn't exist."); + break; + case "tooLong": + case "tooShort": + case "patternMismatch": + case "typeMismatch": + case "stepMismatch": + case "rangeOverflow": + case "rangeUnderflow": + case "valueMissing": + case "badInput": + case "valid": + assert_true("validity" in ctl, "The validity attribute doesn't exist."); + assert_true(item in ctl.validity, "The " + item + " attribute doesn't exist."); + break; + case "customError": + assert_true("validity" in ctl, "The validity attribute doesn't exist."); + assert_true("setCustomValidity" in ctl, "The validity attribute doesn't exist."); + assert_true("validationMessage" in ctl, "The validity attribute doesn't exist."); + assert_true(item in ctl.validity, "The " + item + " attribute doesn't exist."); + break; + } + }, + + iterate_over: function(ctl, data) { + // Iterate over normal, disabled, readonly, and both (if applicable). + var ctlNormal = ctl.cloneNode(true); + this.set_conditions(ctlNormal, data.conditions); + if (data.dirty) + this.set_dirty(ctlNormal); + + var ctlDisabled = ctl.cloneNode(true); + this.set_conditions(ctlDisabled, data.conditions); + if (data.dirty) + this.set_dirty(ctlDisabled); + ctlDisabled.disabled = true; + + var expectedImmutable = + data.expectedImmutable !== undefined ? data.expectedImmutable : data.expected; + + var variants = [ + {ctl: ctlNormal, expected: data.expected, condStr: '.'}, + {ctl: ctlDisabled, expected: expectedImmutable, condStr: ', when control is disabled.'}, + ]; + + if ('readOnly' in ctl) { + var ctlReadonly = ctl.cloneNode(true); + this.set_conditions(ctlReadonly, data.conditions); + if (data.dirty) + this.set_dirty(ctlReadonly); + ctlReadonly.readOnly = true; + + var ctlBoth = ctl.cloneNode(true); + this.set_conditions(ctlBoth, data.conditions); + if (data.dirty) + this.set_dirty(ctlBoth); + ctlBoth.disabled = true; + ctlBoth.readOnly = true; + + variants.push({ + ctl: ctlReadonly, + expected: expectedImmutable, + condStr: ', when control is readonly.' + }); + + variants.push({ + ctl: ctlBoth, + expected: expectedImmutable, + condStr: ', when control is disabled & readonly.' + }); + } + + return variants; + }, + + run_test: function(testee, method) { + var testMethod = "test_" + method; + if (typeof this[testMethod] !== "function") { + return false; + } + + var ele = null, + prefix = ""; + + for (var i = 0; i < testee.length; i++) { + if (testee[i].types.length > 0) { + for (var typ in testee[i].types) { + ele = document.createElement(testee[i].tag); + document.body.appendChild(ele); + try { + ele.type = testee[i].types[typ]; + } catch (e) { + //Do nothing, avoid the runtime error breaking the test + } + + prefix = "[" + testee[i].tag.toUpperCase() + " in " + testee[i].types[typ].toUpperCase() + " status] "; + + for (var j = 0; j < testee[i].testData.length; j++) { + testee[i].testData[j].name = testee[i].testData[j].name.replace(/\[.*\]\s/g, prefix); + this[testMethod](ele, testee[i].testData[j]); + } + } + } else { + ele = document.createElement(testee[i].tag); + document.body.appendChild(ele); + prefix = "[" + testee[i].tag + "] "; + + if (testElements[i].tag === "select") { + ele.add(new Option('test1', '')); // Placeholder + ele.add(new Option("test2", 1)); + } + + for (var item in testee[i].testData) { + testee[i].testData[item].name = testee[i].testData[item].name.replace("[target]", prefix); + this[testMethod](ele, testee[i].testData[item]); + } + } + } + } +} diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-email-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-email-delete-manual.html new file mode 100644 index 0000000000..008089f39a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-email-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="email"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-password-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-password-delete-manual.html new file mode 100644 index 0000000000..353d9466dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-password-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="password"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-search-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-search-delete-manual.html new file mode 100644 index 0000000000..73be3b6d83 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-search-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="search"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-tel-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-tel-delete-manual.html new file mode 100644 index 0000000000..bf7682af3e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-tel-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="tel"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-text-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-text-delete-manual.html new file mode 100644 index 0000000000..2eea2b7245 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-text-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="text"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-url-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-url-delete-manual.html new file mode 100644 index 0000000000..17039a71a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-input-url-delete-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="url"], ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-textarea-delete-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-textarea-delete-manual.html new file mode 100644 index 0000000000..2212a1ca90 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooLong-textarea-delete-manual.html @@ -0,0 +1,30 @@ + + + + + textarea, ValidityState.tooLong and user editing + + + + + + + + +

                                                                                                                                                        Delete one character from the following text area:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-email-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-email-add-manual.html new file mode 100644 index 0000000000..366f028e77 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-email-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="email"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-password-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-password-add-manual.html new file mode 100644 index 0000000000..cdfd05152b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-password-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="password"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-search-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-search-add-manual.html new file mode 100644 index 0000000000..86af374c37 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-search-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="search"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-tel-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-tel-add-manual.html new file mode 100644 index 0000000000..08573f892a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-tel-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="tel"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-text-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-text-add-manual.html new file mode 100644 index 0000000000..129ed93533 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-text-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="text"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-url-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-url-add-manual.html new file mode 100644 index 0000000000..418c75b8f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-input-url-add-manual.html @@ -0,0 +1,30 @@ + + + + + input[type="url"], ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text input:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-textarea-add-manual.html b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-textarea-add-manual.html new file mode 100644 index 0000000000..73005977df --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/constraints/tooShort-textarea-add-manual.html @@ -0,0 +1,30 @@ + + + + + textarea, ValidityState.tooShort and user editing + + + + + + + + +

                                                                                                                                                        Type one additional character into the following text area:

                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/association.window.js b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/association.window.js new file mode 100644 index 0000000000..4d84e7d3f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/association.window.js @@ -0,0 +1,7 @@ +test(() => { + const form = document.createElement("form"), + input = document.createElement("input"); + + form.appendChild(input); + assert_equals(input.form, form); +}, "Ensure input and form get associated when not in a document"); diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form.html b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form.html new file mode 100644 index 0000000000..518de35863 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form.html @@ -0,0 +1,91 @@ + + +HTMLInputElement#form + + + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        fieldset
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        object +

                                                                                                                                                        output +

                                                                                                                                                        +

                                                                                                                                                        + + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + + +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        + + +

                                                                                                                                                        + + + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_attribute.html b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_attribute.html new file mode 100644 index 0000000000..dde3250dbf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_attribute.html @@ -0,0 +1,233 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table.html b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table.html new file mode 100644 index 0000000000..1aa75c27b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table.html @@ -0,0 +1,50 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_2.html b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_2.html new file mode 100644 index 0000000000..d9aee12b5f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_2.html @@ -0,0 +1,45 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_3.html b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_3.html new file mode 100644 index 0000000000..db70b34b1a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-control-infrastructure/form_owner_and_table_3.html @@ -0,0 +1,17 @@ + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js new file mode 100644 index 0000000000..4890fd8623 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js @@ -0,0 +1,21 @@ +// https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#the-formdataevent-interface + +test(() => { + let fd = new FormData(); + assert_throws_js(TypeError, () => { FormDataEvent('', {formData:fd}) }, "Calling FormDataEvent constructor without 'new' must throw"); + assert_throws_js(TypeError, () => { new FormDataEvent() }, '0 arguments'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo') }, '1 argument'); + assert_throws_js(TypeError, () => { new FormDataEvent(fd, fd) }, '2 invalid arguments'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo', null) }, 'Null dictionary'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo', undefined) }, 'Undefined dictionary'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo', { formData: null }) }, 'Null formData'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo', { formData: undefined }) }, 'Undefined formData'); + assert_throws_js(TypeError, () => { new FormDataEvent('foo', { formData: 'bar' }) }, 'Wrong type of formData'); +}, 'Failing FormDataEvent constructor'); + +test(() => { + let fd = new FormData(); + let event = new FormDataEvent('bar', { formData: fd, bubbles: true }); + assert_equals(event.formData, fd); + assert_true(event.bubbles); +}, 'Successful FormDataEvent constructor'); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/SubmitEvent.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/SubmitEvent.window.js new file mode 100644 index 0000000000..3821815515 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/SubmitEvent.window.js @@ -0,0 +1,41 @@ +// https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#the-submitevent-interface + +test(() => { + assert_throws_js(TypeError, () => SubmitEvent(""), "Calling SubmitEvent constructor without 'new' must throw"); + assert_throws_js(TypeError, () => { new SubmitEvent() }, '0 arguments'); + assert_throws_js(TypeError, () => { new SubmitEvent('foo', { submitter: 'bar' }) }, 'Wrong type of submitter'); +}, 'Failing SubmitEvent constructor'); + +test(() => { + let button = document.createElement('button'); + let event = new SubmitEvent('bar', { submitter: button, bubbles: true }); + assert_equals(event.submitter, button); + assert_true(event.bubbles); +}, 'Successful SubmitEvent constructor'); + +test(() => { + let event1 = new SubmitEvent('bar', {submitter: null}); + assert_equals(event1.submitter, null); + let event2 = new SubmitEvent('baz', {submitter: undefined}); + assert_equals(event2.submitter, null); +}, 'Successful SubmitEvent constructor; null/undefined submitter'); + +test(() => { + let event1 = new SubmitEvent('bar', null); + assert_equals(event1.submitter, null); + let event2 = new SubmitEvent('baz', undefined); + assert_equals(event2.submitter, null); +}, 'Successful SubmitEvent constructor; null/undefined dictionary'); + +test(() => { + let event1 = new SubmitEvent('bar', {}); + assert_equals(event1.submitter, null); + let button = document.createElement('button'); + let event2 = new SubmitEvent("bax", button); + assert_equals(event2.submitter, null); +}, 'Successful SubmitEvent constructor; empty dictionary'); + +test(() => { + let event = new SubmitEvent('bar'); + assert_equals(event.submitter, null); +}, 'Successful SubmitEvent constructor; missing dictionary'); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html new file mode 100644 index 0000000000..c27270ea30 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/enctypes-helper.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/enctypes-helper.js new file mode 100644 index 0000000000..0f0d68163d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/enctypes-helper.js @@ -0,0 +1,187 @@ +// This file exposes the `formSubmissionTemplate` function, which can be used +// to create tests for the form submission encoding of various enctypes: +// +// const urlencodedTest = formSubmissionTemplate( +// "application/x-www-form-urlencoded", +// (expected, _actualFormBody) => expected +// ); +// +// urlencodedTest({ +// name: "a", +// value: "b", +// expected: "a=b", +// formEncoding: "UTF-8", // optional +// description: "Simple urlencoded test" +// }); +// +// The above call to `urlencodedTest` tests the urlencoded form submission for a +// form whose entry list contains a single entry with name "a" and value "b", +// and it checks that the form payload matches the `expected` property after +// isomorphic-encoding. +// +// Since per the spec no normalization of the form entries should happen before +// the actual form encoding, each call to `urlencodedTest` will in fact add two +// tests: one submitting the entry as a form control (marked "normal form"), and +// one adding the entry through the `formdata` event (marked "formdata event"). +// Both cases are compared against the same expected value. +// +// Since multipart/form-data boundary strings can't be predicted ahead of time, +// the second parameter of `formSubmissionTemplate` allows transforming the +// expected value passed to each test. The second argument of that callback +// is the actual form body (isomorphic-decoded). When this callback is used, the +// `expected` property doesn't need to be a string. + +(() => { + // Using echo-content-escaped.py rather than + // /fetch/api/resources/echo-content.py to work around WebKit not + // percent-encoding \x00, which causes the response to be detected as + // a binary file and served as a download. + const ACTION_URL = "/FileAPI/file/resources/echo-content-escaped.py"; + + const IFRAME_NAME = "formtargetframe"; + + // Undoes the escapes from echo-content-escaped.py + function unescape(str) { + return str + .replace(/\r\n?|\n/g, "\r\n") + .replace( + /\\x[0-9A-Fa-f]{2}/g, + (escape) => String.fromCodePoint(parseInt(escape.substring(2), 16)), + ) + .replace(/\\\\/g, "\\"); + } + + // Tests the form submission of an entry list containing a single entry. + // + // `expectedBuilder` is a function that takes in the actual form body + // (necessary to get the multipart/form-data payload) and returns the form + // body that should be expected. + // + // If `testFormData` is false, the form entry will be submitted in for + // controls. If it is true, it will submitted by modifying the entry list + // during the `formdata` event. + async function formSubmissionTest({ + name, + value, + expectedBuilder, + enctype, + formEncoding, + testFormData = false, + testCase, + }) { + if (document.readyState !== "complete") { + await new Promise((resolve) => addEventListener("load", resolve)); + } + + const formTargetFrame = Object.assign(document.createElement("iframe"), { + name: IFRAME_NAME, + }); + document.body.append(formTargetFrame); + testCase.add_cleanup(() => { + document.body.removeChild(formTargetFrame); + }); + + const form = Object.assign(document.createElement("form"), { + acceptCharset: formEncoding, + action: ACTION_URL, + method: "POST", + enctype, + target: IFRAME_NAME, + }); + document.body.append(form); + testCase.add_cleanup(() => { + document.body.removeChild(form); + }); + + if (!testFormData) { + const input = document.createElement("input"); + input.name = name; + if (value instanceof File) { + input.type = "file"; + const dataTransfer = new DataTransfer(); + dataTransfer.items.add(value); + input.files = dataTransfer.files; + } else { + input.type = "hidden"; + input.value = value; + } + form.append(input); + } else { + form.addEventListener("formdata", (evt) => { + evt.formData.append(name, value); + }); + } + + await new Promise((resolve) => { + form.submit(); + formTargetFrame.onload = resolve; + }); + + const serialized = unescape( + formTargetFrame.contentDocument.body.textContent, + ); + const expected = expectedBuilder(serialized); + assert_equals(serialized, expected); + } + + // This function returns a function to add individual form tests corresponding + // to some enctype. + // `expectedBuilder` is an optional callback that takes two parameters: + // `expected` (the `expected` property passed to a test) and `actualFormBody` + // (the actual form body submitted by the browser, isomorphic-decoded). It + // must return the correct form body that should have been submitted, + // isomorphic-encoded. This is necessary in order to account for the + // multipart/form-data boundary. + // + // The returned function takes an object with the following properties: + // - `name`, the form entry's name. Must be a string. + // - `value`, the form entry's value, either a string or a `File` object. + // - `expected`, the expected form body. Usually a string, but it can be + // anything depending on `expectedBuilder`. + // - `formEncoding` (optional), the character encoding used for submitting the + // form. + // - `description`, used as part of the testharness test's description. + window.formSubmissionTemplate = ( + enctype, + expectedBuilder = (expected) => expected + ) => { + function form({ + name, + value, + expected, + formEncoding = "utf-8", + description, + }) { + const commonParams = { + name, + value, + expectedBuilder: expectedBuilder.bind(null, expected), + enctype, + formEncoding, + }; + + // Normal form + promise_test( + (testCase) => + formSubmissionTest({ + ...commonParams, + testCase, + }), + `${enctype}: ${description} (normal form)`, + ); + + // formdata event + promise_test( + (testCase) => + formSubmissionTest({ + ...commonParams, + testFormData: true, + testCase, + }), + `${enctype}: ${description} (formdata event)`, + ); + } + + return form; + }; +})(); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window.js new file mode 100644 index 0000000000..7df128515c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-empty-file.window.js @@ -0,0 +1,99 @@ +test(t => { + const form = document.body.appendChild(document.createElement("form")), + input = form.appendChild(document.createElement("input")); + input.type = "file"; + input.name = "hi"; + t.add_cleanup(() => { + document.body.removeChild(form); + }); + const fd = new FormData(form), + value = fd.get(input.name); + assert_true(value instanceof File, "value is a File"); + assert_equals(value.name, "", "name"); + assert_equals(value.type, "application/octet-stream", "type"); + assert_equals(value.size, 0, "expected value to be an empty File"); +}, "Empty is still added to the form's entry list"); + +async_test((t) => { + const form = document.body.appendChild(document.createElement("form")), + input = form.appendChild(document.createElement("input")), + target = document.createElement("iframe"); + target.name = "target1"; + document.body.appendChild(target); + form.method = "POST"; + form.action = "/fetch/api/resources/echo-content.py"; + form.enctype = "application/x-www-form-urlencoded"; + form.target = target.name; + input.type = "file"; + input.name = "hi"; + t.add_cleanup(() => { + document.body.removeChild(form); + document.body.removeChild(target); + }); + + target.addEventListener("load", t.step_func_done(() => { + assert_equals(target.contentDocument.body.textContent, "hi="); + })); + form.submit(); +}, "Empty shows up in the urlencoded serialization"); + +async_test((t) => { + const form = document.body.appendChild(document.createElement("form")), + input = form.appendChild(document.createElement("input")), + target = document.createElement("iframe"); + target.name = "target2"; + document.body.appendChild(target); + form.method = "POST"; + form.action = "/fetch/api/resources/echo-content.py"; + form.enctype = "multipart/form-data"; + form.target = target.name; + input.type = "file"; + input.name = "hi"; + t.add_cleanup(() => { + document.body.removeChild(form); + document.body.removeChild(target); + }); + + target.addEventListener("load", t.step_func_done(() => { + // We use \n rather than \r\n because newlines get normalized as a result + // of HTML parsing. + const found = target.contentDocument.body.textContent; + const boundary = found.split("\n")[0]; + const expected = [ + boundary, + 'Content-Disposition: form-data; name="hi"; filename=""', + "Content-Type: application/octet-stream", + "", + "", + boundary + "--", + "", + ].join("\n"); + assert_equals(found, expected); + })); + form.submit(); +}, "Empty shows up in the multipart/form-data serialization"); + +async_test((t) => { + const form = document.body.appendChild(document.createElement("form")), + input = form.appendChild(document.createElement("input")), + target = document.createElement("iframe"); + target.name = "target3"; + document.body.appendChild(target); + form.method = "POST"; + form.action = "/fetch/api/resources/echo-content.py"; + form.enctype = "text/plain"; + form.target = target.name; + input.type = "file"; + input.name = "hi"; + t.add_cleanup(() => { + document.body.removeChild(form); + document.body.removeChild(target); + }); + + target.addEventListener("load", t.step_func_done(() => { + // The actual result is "hi=\r\n"; the newline gets normalized as a side + // effect of the HTML parsing. + assert_equals(target.contentDocument.body.textContent, "hi=\n"); + })); + form.submit(); +}, "Empty shows up in the text/plain serialization"); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv-form.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv-form.html new file mode 100644 index 0000000000..ce87abd957 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv-form.html @@ -0,0 +1,27 @@ + + +This is the form that will be submitted + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv.html new file mode 100644 index 0000000000..4ac26092ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-data-set-usv.html @@ -0,0 +1,52 @@ + + +Submitting a form data set that contains unpaired surrogates must convert to Unicode scalar values + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-2.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-2.html new file mode 100644 index 0000000000..f7939e0fa3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-2.html @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-3.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-3.html new file mode 100644 index 0000000000..fbb6a42577 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-3.html @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-default-action.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-default-action.html new file mode 100644 index 0000000000..a14cfe7afa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-default-action.html @@ -0,0 +1,108 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-multiple-targets.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-multiple-targets.html new file mode 100644 index 0000000000..2b5a589b53 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-multiple-targets.html @@ -0,0 +1,37 @@ + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault-click.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault-click.html new file mode 100644 index 0000000000..68dc9c10a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault-click.html @@ -0,0 +1,67 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault.html new file mode 100644 index 0000000000..b63b78916c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-preventdefault.html @@ -0,0 +1,59 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-requestsubmit.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-requestsubmit.html new file mode 100644 index 0000000000..b4028784ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-requestsubmit.html @@ -0,0 +1,142 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-to-different-origin-frame.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-to-different-origin-frame.html new file mode 100644 index 0000000000..00a46bfd43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit-to-different-origin-frame.html @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit.html new file mode 100644 index 0000000000..b6ea0cefab --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-double-submit.html @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-echo.py b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-echo.py new file mode 100644 index 0000000000..72f1f51ce5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-echo.py @@ -0,0 +1,7 @@ +def main(request, response): + bytes = bytearray(request.raw_input.read()) + bytes_string = b" ".join(b"%02x" % b for b in bytes) + return ( + [(b"Content-Type", b"text/plain")], + bytes_string + ) diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html new file mode 100644 index 0000000000..0f0fd4ede0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html @@ -0,0 +1,165 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submit-iframe-then-location-navigate.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submit-iframe-then-location-navigate.html new file mode 100644 index 0000000000..ad2943e2bb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submit-iframe-then-location-navigate.html @@ -0,0 +1,23 @@ + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/getactionurl.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/getactionurl.html new file mode 100644 index 0000000000..2e21828ae6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/getactionurl.html @@ -0,0 +1,11 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/historical.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/historical.window.js new file mode 100644 index 0000000000..fcc47d90f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/historical.window.js @@ -0,0 +1,19 @@ +// META: script=./resources/targetted-form.js + +test(t => { + const form = populateForm(''); + t.add_cleanup(() => { + form.previousElementSibling.remove(); + form.remove(); + }); + const submitter = form.querySelector('input[type=submit]'); + let invalid = form.querySelector('[required]'); + let targets = []; + const listener = e => targets.push(e.target.localName); + form.addEventListener("invalid", t.step_func(listener)); + form.oninvalid = t.step_func(listener); + invalid.addEventListener("invalid", t.step_func(listener)); + invalid.oninvalid = t.step_func(listener); + submitter.click(); + assert_array_equals(targets, ["input", "input"]); +}, "invalid event is only supported for form controls"); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/implicit-submission.optional.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/implicit-submission.optional.html new file mode 100644 index 0000000000..379a4396ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/implicit-submission.optional.html @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-form-submit.tentative.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-form-submit.tentative.html new file mode 100644 index 0000000000..f476308b7d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-form-submit.tentative.html @@ -0,0 +1,32 @@ + + + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-navigation-then-form-submit.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-navigation-then-form-submit.html new file mode 100644 index 0000000000..93a4ea6004 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/jsurl-navigation-then-form-submit.html @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/multipart-formdata.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/multipart-formdata.window.js new file mode 100644 index 0000000000..ca69c7dac7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/multipart-formdata.window.js @@ -0,0 +1,357 @@ +// META: script=enctypes-helper.js + +// Form submissions in multipart/form-data are also tested in +// /FileAPI/file/send-file* + +// The `expected` property of objects passed to `formTest` must be an object +// with `name`, `value` and optionally `filename` properties, which represent +// the corresponding data in a multipart/form-data part. +const formTest = formSubmissionTemplate( + "multipart/form-data", + ({ name, filename, value }, serialized) => { + let headers; + if (filename === undefined) { + headers = [`Content-Disposition: form-data; name="${name}"`]; + } else { + headers = [ + `Content-Disposition: form-data; name="${name}"; filename="${filename}"`, + "Content-Type: text/plain", + ]; + } + + const boundary = serialized.split("\r\n")[0]; + + return [ + boundary, + ...headers, + "", + value, + boundary + "--", + "", + ].join("\r\n"); + }, +); + +formTest({ + name: "basic", + value: "test", + expected: { + name: "basic", + value: "test", + }, + description: "Basic test", +}); + +formTest({ + name: "basic", + value: new File([], "file-test.txt", { type: "text/plain" }), + expected: { + name: "basic", + filename: "file-test.txt", + value: "", + }, + description: "Basic File test", +}); + +formTest({ + name: "a\0b", + value: "c", + expected: { + name: "a\0b", + value: "c", + }, + description: "0x00 in name", +}); + +formTest({ + name: "a", + value: "b\0c", + expected: { + name: "a", + value: "b\0c", + }, + description: "0x00 in value", +}); + +formTest({ + name: "a", + value: new File([], "b\0c", { type: "text/plain" }), + expected: { + name: "a", + filename: "b\0c", + value: "", + }, + description: "0x00 in filename", +}); + +formTest({ + name: "a\nb", + value: "c", + expected: { + name: "a%0D%0Ab", + value: "c", + }, + description: "\\n in name", +}); + +formTest({ + name: "a\rb", + value: "c", + expected: { + name: "a%0D%0Ab", + value: "c", + }, + description: "\\r in name", +}); + +formTest({ + name: "a\r\nb", + value: "c", + expected: { + name: "a%0D%0Ab", + value: "c", + }, + description: "\\r\\n in name", +}); + +formTest({ + name: "a\n\rb", + value: "c", + expected: { + name: "a%0D%0A%0D%0Ab", + value: "c", + }, + description: "\\n\\r in name", +}); + +formTest({ + name: "a", + value: "b\nc", + expected: { + name: "a", + value: "b\r\nc", + }, + description: "\\n in value", +}); + +formTest({ + name: "a", + value: "b\rc", + expected: { + name: "a", + value: "b\r\nc", + }, + description: "\\r in value", +}); + +formTest({ + name: "a", + value: "b\r\nc", + expected: { + name: "a", + value: "b\r\nc", + }, + description: "\\r\\n in value", +}); + +formTest({ + name: "a", + value: "b\n\rc", + expected: { + name: "a", + value: "b\r\n\r\nc", + }, + description: "\\n\\r in value", +}); + +formTest({ + name: "a", + value: new File([], "b\nc", { type: "text/plain" }), + expected: { + name: "a", + filename: "b%0Ac", + value: "", + }, + description: "\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\rc", { type: "text/plain" }), + expected: { + name: "a", + filename: "b%0Dc", + value: "", + }, + description: "\\r in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\r\nc", { type: "text/plain" }), + expected: { + name: "a", + filename: "b%0D%0Ac", + value: "", + }, + description: "\\r\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\n\rc", { type: "text/plain" }), + expected: { + name: "a", + filename: "b%0A%0Dc", + value: "", + }, + description: "\\n\\r in filename", +}); + +formTest({ + name: 'a"b', + value: "c", + expected: { + name: "a%22b", + value: "c", + }, + description: "double quote in name", +}); + +formTest({ + name: "a", + value: 'b"c', + expected: { + name: "a", + value: 'b"c', + }, + description: "double quote in value", +}); + +formTest({ + name: "a", + value: new File([], 'b"c', { type: "text/plain" }), + expected: { + name: "a", + filename: "b%22c", + value: "", + }, + description: "double quote in filename", +}); + +formTest({ + name: "a'b", + value: "c", + expected: { + name: "a'b", + value: "c", + }, + description: "single quote in name", +}); + +formTest({ + name: "a", + value: "b'c", + expected: { + name: "a", + value: "b'c", + }, + description: "single quote in value", +}); + +formTest({ + name: "a", + value: new File([], "b'c", { type: "text/plain" }), + expected: { + name: "a", + filename: "b'c", + value: "", + }, + description: "single quote in filename", +}); + +formTest({ + name: "a\\b", + value: "c", + expected: { + name: "a\\b", + value: "c", + }, + description: "backslash in name", +}); + +formTest({ + name: "a", + value: "b\\c", + expected: { + name: "a", + value: "b\\c", + }, + description: "backslash in value", +}); + +formTest({ + name: "a", + value: new File([], "b\\c", { type: "text/plain" }), + expected: { + name: "a", + filename: "b\\c", + value: "", + }, + description: "backslash in filename", +}); + +formTest({ + name: "áb", + value: "ç", + expected: { + name: "\xC3\xA1b", + value: "\xC3\xA7", + }, + description: "non-ASCII in name and value", +}); + +formTest({ + name: "a", + value: new File([], "ə.txt", { type: "text/plain" }), + expected: { + name: "a", + filename: "\xC9\x99.txt", + value: "", + }, + description: "non-ASCII in filename", +}); + +formTest({ + name: "aəb", + value: "c\uFFFDd", + formEncoding: "windows-1252", + expected: { + name: "aəb", + value: "c�d", + }, + description: "characters not in encoding in name and value", +}); + +formTest({ + name: "á", + value: new File([], "💩", { type: "text/plain" }), + formEncoding: "windows-1252", + expected: { + name: "\xE1", + filename: "💩", + value: "", + }, + description: "character not in encoding in filename", +}); + +formTest({ + name: "\uD800", + value: "\uD800", + formEncoding: "windows-1252", + expected: { + name: "�", + value: "�" + }, + description: "lone surrogate in name and value", +}); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/newline-normalization.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/newline-normalization.html new file mode 100644 index 0000000000..2c83c5a1e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/newline-normalization.html @@ -0,0 +1,112 @@ + + + + + + Constructing the entry list shouldn't perform newline normalization + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html new file mode 100644 index 0000000000..6b50bf599b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/reparent-form-during-planned-navigation-task.html @@ -0,0 +1,15 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/request-submit-activation.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/request-submit-activation.html new file mode 100644 index 0000000000..0d1e54daf3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/request-submit-activation.html @@ -0,0 +1,30 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/file-submission.py b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/file-submission.py new file mode 100644 index 0000000000..89cd182add --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/file-submission.py @@ -0,0 +1,10 @@ +import json + +from wptserve.utils import isomorphic_decode + +def main(request, response): + headers = [(b"Content-Type", b"text/html")] + testinput = request.POST.first(b"testinput") + value = isomorphic_decode(testinput.value) + body = u"" + return headers, body diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form-submission.py b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form-submission.py new file mode 100644 index 0000000000..f0c2d4cf61 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form-submission.py @@ -0,0 +1,12 @@ +def main(request, response): + if request.headers.get(b'Content-Type') == b'application/x-www-form-urlencoded': + result = request.body == b'foo=bara' + elif request.headers.get(b'Content-Type') == b'text/plain': + result = request.body == b'qux=baz\r\n' + else: + result = request.POST.first(b'foo') == b'bar' + + result = result and request.url_parts.query == u'query=1' + + return ([(b"Content-Type", b"text/plain")], + b"OK" if result else b"FAIL") diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form.html new file mode 100644 index 0000000000..8b16672d6b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/form.html @@ -0,0 +1,4 @@ + + + form.html + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/getactionurl-iframe.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/getactionurl-iframe.html new file mode 100644 index 0000000000..116371a995 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/getactionurl-iframe.html @@ -0,0 +1,14 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/jsurl-form-submit-iframe.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/jsurl-form-submit-iframe.html new file mode 100644 index 0000000000..00a1eefd0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/jsurl-form-submit-iframe.html @@ -0,0 +1,12 @@ + + + +
                                                                                                                                                        +anchor + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/location.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/location.html new file mode 100644 index 0000000000..6724189eff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/location.html @@ -0,0 +1,4 @@ + + + location.html + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js new file mode 100644 index 0000000000..52482c859f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js @@ -0,0 +1,38 @@ +let frameCounter = 0; + +function populateForm(optionalContentHtml) { + if (!optionalContentHtml) + optionalContentHtml = ''; + const frameName = "form-test-target-" + frameCounter++; + document.body.insertAdjacentHTML( + 'afterbegin', + `` + + `
                                                                                                                                                        ${optionalContentHtml}
                                                                                                                                                        `); + return document.getElementsByName(frameName)[0].nextSibling; +} + +function submitPromise(form, iframe) { + return new Promise((resolve, reject) => { + iframe.onload = () => resolve(iframe.contentWindow.location.search); + iframe.onerror = () => reject(new Error('iframe onerror fired')); + form.submit(); + }); +} + +function loadPromise(iframe) { + return new Promise((resolve, reject) => { + iframe.onload = function() { + // The initial about:blank load event can be fired before the form navigation occurs. + // See https://github.com/whatwg/html/issues/490 for more information. + if (iframe.contentWindow.location == "about:blank") { return; } + resolve(); + }; + iframe.onerror = () => reject(new Error('iframe onerror fired')); + }); +} + +function getParamValue(iframe, paramName) { + let params = (new URL(iframe.contentWindow.location)).searchParams; + return params.get(paramName); +} diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/submission-checks.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submission-checks.window.js new file mode 100644 index 0000000000..e242ce830a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submission-checks.window.js @@ -0,0 +1,62 @@ +async_test(t => { + const frame = document.createElement("frame"), + form = document.createElement("form"); + t.add_cleanup(() => frame.remove()); + form.action = "/common/blank.html"; + form.target = "doesnotmattertwobits"; + frame.name = "doesnotmattertwobits"; + document.body.appendChild(frame); + frame.onload = t.step_func(() => { + if(frame.contentWindow.location.href === "about:blank") + return; + assert_unreached(); + }); + form.submit(); + t.step_timeout(() => { + assert_equals(frame.contentWindow.location.href, "about:blank"); + t.done(); + }, 500); +}, "
                                                                                                                                                        not connected to a document cannot navigate"); + +async_test(t => { + const frame = document.createElement("frame"), + form = document.createElement("form"); + t.add_cleanup(() => frame.remove()); + form.action = "/common/blank.html"; + form.target = "doesnotmattertwoqbits"; + form.onsubmit = t.step_func(() => form.remove()); + frame.name = "doesnotmattertwoqbits"; + document.body.appendChild(frame); + document.body.appendChild(form); + frame.onload = t.step_func(() => { + if(frame.contentWindow.location.href === "about:blank") + return; + assert_unreached(); + }); + const submit = form.appendChild(document.createElement("input")); + submit.type = "submit" + submit.click(); + t.step_timeout(() => { + assert_equals(frame.contentWindow.location.href, "about:blank"); + t.done(); + }, 500); +}, " not connected to a document after submit event cannot navigate"); + +async_test(t => { + const frame = document.createElement("frame"), + form = document.createElement("form"); + t.add_cleanup(() => frame.remove()); + form.action = "/"; + document.body.appendChild(frame); + frame.contentDocument.body.appendChild(form); + frame.onload = t.step_func(() => { + if(frame.contentWindow.location.href === "about:blank") + return; + form.submit(); + t.step_timeout(() => { + assert_equals(frame.contentWindow.location.pathname, "/common/blank.html"); + t.done(); + }, 500) + }); + frame.src = "/common/blank.html"; +}, " in a navigated document cannot navigate"); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-entity-body.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-entity-body.html new file mode 100644 index 0000000000..be9c5f0696 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-entity-body.html @@ -0,0 +1,114 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-file.sub.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-file.sub.html new file mode 100644 index 0000000000..aab60ba949 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/submit-file.sub.html @@ -0,0 +1,25 @@ + + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/text-plain.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/text-plain.window.js new file mode 100644 index 0000000000..9ff77aed12 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/text-plain.window.js @@ -0,0 +1,223 @@ +// META: script=enctypes-helper.js + +const formTest = formSubmissionTemplate("text/plain"); + +formTest({ + name: "basic", + value: "test", + expected: "basic=test\r\n", + description: "Basic test", +}); + +formTest({ + name: "basic", + value: new File([], "file-test.txt"), + expected: "basic=file-test.txt\r\n", + description: "Basic File test", +}); + +formTest({ + name: "a\0b", + value: "c", + expected: "a\0b=c\r\n", + description: "0x00 in name", +}); + +formTest({ + name: "a", + value: "b\0c", + expected: "a=b\0c\r\n", + description: "0x00 in value", +}); + +formTest({ + name: "a", + value: new File([], "b\0c"), + expected: "a=b\0c\r\n", + description: "0x00 in filename", +}); + +formTest({ + name: "a\nb", + value: "c", + expected: "a\r\nb=c\r\n", + description: "\\n in name", +}); + +formTest({ + name: "a\rb", + value: "c", + expected: "a\r\nb=c\r\n", + description: "\\r in name", +}); + +formTest({ + name: "a\r\nb", + value: "c", + expected: "a\r\nb=c\r\n", + description: "\\r\\n in name", +}); + +formTest({ + name: "a\n\rb", + value: "c", + expected: "a\r\n\r\nb=c\r\n", + description: "\\n\\r in name", +}); + +formTest({ + name: "a", + value: "b\nc", + expected: "a=b\r\nc\r\n", + description: "\\n in value", +}); + +formTest({ + name: "a", + value: "b\rc", + expected: "a=b\r\nc\r\n", + description: "\\r in value", +}); + +formTest({ + name: "a", + value: "b\r\nc", + expected: "a=b\r\nc\r\n", + description: "\\r\\n in value", +}); + +formTest({ + name: "a", + value: "b\n\rc", + expected: "a=b\r\n\r\nc\r\n", + description: "\\n\\r in value", +}); + +formTest({ + name: "a", + value: new File([], "b\nc"), + expected: "a=b\r\nc\r\n", + description: "\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\rc"), + expected: "a=b\r\nc\r\n", + description: "\\r in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\r\nc"), + expected: "a=b\r\nc\r\n", + description: "\\r\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\n\rc"), + expected: "a=b\r\n\r\nc\r\n", + description: "\\n\\r in filename", +}); + +formTest({ + name: 'a"b', + value: "c", + expected: 'a"b=c\r\n', + description: "double quote in name", +}); + +formTest({ + name: "a", + value: 'b"c', + expected: 'a=b"c\r\n', + description: "double quote in value", +}); + +formTest({ + name: "a", + value: new File([], 'b"c'), + expected: 'a=b"c\r\n', + description: "double quote in filename", +}); + +formTest({ + name: "a'b", + value: "c", + expected: "a'b=c\r\n", + description: "single quote in name", +}); + +formTest({ + name: "a", + value: "b'c", + expected: "a=b'c\r\n", + description: "single quote in value", +}); + +formTest({ + name: "a", + value: new File([], "b'c"), + expected: "a=b'c\r\n", + description: "single quote in filename", +}); + +formTest({ + name: "a\\b", + value: "c", + expected: "a\\b=c\r\n", + description: "backslash in name", +}); + +formTest({ + name: "a", + value: "b\\c", + expected: "a=b\\c\r\n", + description: "backslash in value", +}); + +formTest({ + name: "a", + value: new File([], "b\\c"), + expected: "a=b\\c\r\n", + description: "backslash in filename", +}); + +formTest({ + name: "áb", + value: "ç", + expected: "\xC3\xA1b=\xC3\xA7\r\n", + description: "non-ASCII in name and value", +}); + +formTest({ + name: "a", + value: new File([], "ə.txt"), + expected: "a=\xC9\x99.txt\r\n", + description: "non-ASCII in filename", +}); + +formTest({ + name: "aəb", + value: "c\uFFFDd", + formEncoding: "windows-1252", + expected: "aəb=c�d\r\n", + description: "characters not in encoding in name and value", +}); + +formTest({ + name: "á", + value: new File([], "💩"), + formEncoding: "windows-1252", + expected: "\xE1=💩\r\n", + description: "character not in encoding in filename", +}); + +formTest({ + name: "\uD800", + value: "\uD800", + formEncoding: "windows-1252", + expected: "�=�\r\n", + description: "lone surrogate in name and value", +}); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/url-encoded.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/url-encoded.html new file mode 100644 index 0000000000..d05364387e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/url-encoded.html @@ -0,0 +1,51 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/urlencoded2.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/urlencoded2.window.js new file mode 100644 index 0000000000..7818f68619 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/urlencoded2.window.js @@ -0,0 +1,223 @@ +// META: script=enctypes-helper.js + +const formTest = formSubmissionTemplate("application/x-www-form-urlencoded"); + +formTest({ + name: "basic", + value: "test", + expected: "basic=test", + description: "Basic test", +}); + +formTest({ + name: "basic", + value: new File([], "file-test.txt"), + expected: "basic=file-test.txt", + description: "Basic File test", +}); + +formTest({ + name: "a\0b", + value: "c", + expected: "a%00b=c", + description: "0x00 in name", +}); + +formTest({ + name: "a", + value: "b\0c", + expected: "a=b%00c", + description: "0x00 in value", +}); + +formTest({ + name: "a", + value: new File([], "b\0c"), + expected: "a=b%00c", + description: "0x00 in filename", +}); + +formTest({ + name: "a\nb", + value: "c", + expected: "a%0D%0Ab=c", + description: "\\n in name", +}); + +formTest({ + name: "a\rb", + value: "c", + expected: "a%0D%0Ab=c", + description: "\\r in name", +}); + +formTest({ + name: "a\r\nb", + value: "c", + expected: "a%0D%0Ab=c", + description: "\\r\\n in name", +}); + +formTest({ + name: "a\n\rb", + value: "c", + expected: "a%0D%0A%0D%0Ab=c", + description: "\\n\\r in name", +}); + +formTest({ + name: "a", + value: "b\nc", + expected: "a=b%0D%0Ac", + description: "\\n in value", +}); + +formTest({ + name: "a", + value: "b\rc", + expected: "a=b%0D%0Ac", + description: "\\r in value", +}); + +formTest({ + name: "a", + value: "b\r\nc", + expected: "a=b%0D%0Ac", + description: "\\r\\n in value", +}); + +formTest({ + name: "a", + value: "b\n\rc", + expected: "a=b%0D%0A%0D%0Ac", + description: "\\n\\r in value", +}); + +formTest({ + name: "a", + value: new File([], "b\nc"), + expected: "a=b%0D%0Ac", + description: "\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\rc"), + expected: "a=b%0D%0Ac", + description: "\\r in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\r\nc"), + expected: "a=b%0D%0Ac", + description: "\\r\\n in filename", +}); + +formTest({ + name: "a", + value: new File([], "b\n\rc"), + expected: "a=b%0D%0A%0D%0Ac", + description: "\\n\\r in filename", +}); + +formTest({ + name: 'a"b', + value: "c", + expected: "a%22b=c", + description: "double quote in name", +}); + +formTest({ + name: "a", + value: 'b"c', + expected: "a=b%22c", + description: "double quote in value", +}); + +formTest({ + name: "a", + value: new File([], 'b"c'), + expected: "a=b%22c", + description: "double quote in filename", +}); + +formTest({ + name: "a'b", + value: "c", + expected: "a%27b=c", + description: "single quote in name", +}); + +formTest({ + name: "a", + value: "b'c", + expected: "a=b%27c", + description: "single quote in value", +}); + +formTest({ + name: "a", + value: new File([], "b'c"), + expected: "a=b%27c", + description: "single quote in filename", +}); + +formTest({ + name: "a\\b", + value: "c", + expected: "a%5Cb=c", + description: "backslash in name", +}); + +formTest({ + name: "a", + value: "b\\c", + expected: "a=b%5Cc", + description: "backslash in value", +}); + +formTest({ + name: "a", + value: new File([], "b\\c"), + expected: "a=b%5Cc", + description: "backslash in filename", +}); + +formTest({ + name: "áb", + value: "ç", + expected: "%C3%A1b=%C3%A7", + description: "non-ASCII in name and value", +}); + +formTest({ + name: "a", + value: new File([], "ə.txt"), + expected: "a=%C9%99.txt", + description: "non-ASCII in filename", +}); + +formTest({ + name: "aəb", + value: "c\uFFFDd", + formEncoding: "windows-1252", + expected: "a%26%23601%3Bb=c%26%2365533%3Bd", + description: "characters not in encoding in name and value", +}); + +formTest({ + name: "á", + value: new File([], "💩"), + formEncoding: "windows-1252", + expected: "%E1=%26%23128169%3B", + description: "character not in encoding in filename", +}); + +formTest({ + name: "\uD800", + value: "\uD800", + formEncoding: "windows-1252", + expected: "%26%2365533%3B=%26%2365533%3B", + description: "lone surrogate in name and value", +}); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe-helper.py b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe-helper.py new file mode 100644 index 0000000000..bbc3b71e94 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe-helper.py @@ -0,0 +1,3 @@ +def main(request, response): + return ([(b"Content-Type", b"text/plain")], + b"OK") diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe.html b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe.html new file mode 100644 index 0000000000..f37bc33f6f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-iframe.html @@ -0,0 +1,29 @@ + +Form targetted at iframe + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-request-header.html b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-request-header.html new file mode 100644 index 0000000000..a5cd68078d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-target/form-target-request-header.html @@ -0,0 +1,31 @@ + +Form request header test + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-base-target.html b/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-base-target.html new file mode 100644 index 0000000000..222be95d2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-base-target.html @@ -0,0 +1,13 @@ + +<form rel> with <base target> + + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-button-target.html b/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-button-target.html new file mode 100644 index 0000000000..76fa868590 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-target/rel-button-target.html @@ -0,0 +1,12 @@ + +<form rel> with <button formtarget> + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/input-change-event-properties.html b/testing/web-platform/tests/html/semantics/forms/input-change-event-properties.html new file mode 100644 index 0000000000..f3c6f7d462 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/input-change-event-properties.html @@ -0,0 +1,86 @@ + + +Test the properties of input and change events + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + +
                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-event.html b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-event.html new file mode 100644 index 0000000000..f7d98f7216 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-event.html @@ -0,0 +1,18 @@ + +Test aspects of the reset event + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-2.html b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-2.html new file mode 100644 index 0000000000..6ce0040c4a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-2.html @@ -0,0 +1,61 @@ + + +Resetting a form integration test + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-event-realm.html b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-event-realm.html new file mode 100644 index 0000000000..6c125c46d0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form-event-realm.html @@ -0,0 +1,38 @@ + + +reset() event firing realm + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form.html b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form.html new file mode 100644 index 0000000000..c7ac3e085b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/reset-form.html @@ -0,0 +1,118 @@ + + +HTML Test: Resetting a form + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + 5 + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/resetting-a-form/support/reset-form-event-realm.html b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/support/reset-form-event-realm.html new file mode 100644 index 0000000000..f55c651b54 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/resetting-a-form/support/reset-form-event-realm.html @@ -0,0 +1,3 @@ + + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/defaultSelection.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/defaultSelection.html new file mode 100644 index 0000000000..be965bf5cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/defaultSelection.html @@ -0,0 +1,28 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/original-id.json b/testing/web-platform/tests/html/semantics/forms/textfieldselection/original-id.json new file mode 100644 index 0000000000..d9fe435856 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/original-id.json @@ -0,0 +1 @@ +{"original_id":"textFieldSelection"} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html new file mode 100644 index 0000000000..d1b46a22d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html @@ -0,0 +1,154 @@ + + + +text field selection: select() + + + + +
                                                                                                                                                        + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-after-content-change.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-after-content-change.html new file mode 100644 index 0000000000..60390085c6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-after-content-change.html @@ -0,0 +1,144 @@ + + +Selection indices after content change + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html new file mode 100644 index 0000000000..48c6313f32 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html @@ -0,0 +1,40 @@ + + +text field selection (textarea) + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application.html new file mode 100644 index 0000000000..063836cd23 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-not-application.html @@ -0,0 +1,112 @@ + + + + +text field selection + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html new file mode 100644 index 0000000000..c8ba83bb98 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html @@ -0,0 +1,153 @@ + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end.html new file mode 100644 index 0000000000..768bce4129 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-start-end.html @@ -0,0 +1,206 @@ + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-value-interactions.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-value-interactions.html new file mode 100644 index 0000000000..0fd8a5b182 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection-value-interactions.html @@ -0,0 +1,127 @@ + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection.html new file mode 100644 index 0000000000..04ab7298e3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/selection.html @@ -0,0 +1,206 @@ + +test if select() API returns correct attributes + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/setSelectionRange.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/setSelectionRange.html new file mode 100644 index 0000000000..bdf52a77f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/setSelectionRange.html @@ -0,0 +1,18 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/textarea-selection-while-parsing.xhtml b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textarea-selection-while-parsing.xhtml new file mode 100644 index 0000000000..57326bb4a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textarea-selection-while-parsing.xhtml @@ -0,0 +1,20 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setRangeText.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setRangeText.html new file mode 100644 index 0000000000..b435fe7881 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setRangeText.html @@ -0,0 +1,155 @@ + + +text field selection: setRangeText + + + + + +
                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html new file mode 100644 index 0000000000..3aba6b7adb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html @@ -0,0 +1,304 @@ + +Test of text field setSelectionRange + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/active-onblur.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/active-onblur.html new file mode 100644 index 0000000000..b9e1b9705e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/active-onblur.html @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-frame.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-frame.html new file mode 100644 index 0000000000..37619d7912 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-frame.html @@ -0,0 +1,3 @@ +
                                                                                                                                                        + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-keyup-prevented.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-keyup-prevented.html new file mode 100644 index 0000000000..29ffbbdd99 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate-keyup-prevented.html @@ -0,0 +1,38 @@ + + +Button activation submits on keyup, but not if keydown is defaultPrevented + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate.html new file mode 100644 index 0000000000..43fe96d398 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-activate.html @@ -0,0 +1,17 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-checkvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-checkvalidity.html new file mode 100644 index 0000000000..55d3091a0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-checkvalidity.html @@ -0,0 +1,44 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        button_checkValidity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-click-submits.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-click-submits.html new file mode 100644 index 0000000000..86b92402e4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-click-submits.html @@ -0,0 +1,232 @@ + + +Clicking a button should submit the form + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-events.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-events.html new file mode 100644 index 0000000000..be7806e1ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-events.html @@ -0,0 +1,166 @@ + + +HTML Test: Button - events + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-labels.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-labels.html new file mode 100644 index 0000000000..b06c71f95d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-labels.html @@ -0,0 +1,38 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        button_labels

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-menu-historical.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-menu-historical.html new file mode 100644 index 0000000000..fe68be0fd0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-menu-historical.html @@ -0,0 +1,25 @@ + +Test that nobody implemented the now-removed menu type and attribute on button + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-setcustomvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-setcustomvalidity.html new file mode 100644 index 0000000000..1747bd727a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-setcustomvalidity.html @@ -0,0 +1,17 @@ + +button setCustomValidity + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-children.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-children.html new file mode 100644 index 0000000000..9cec2bd875 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-children.html @@ -0,0 +1,58 @@ + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children-jssubmit.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children-jssubmit.html new file mode 100644 index 0000000000..26ce16dd2d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children-jssubmit.html @@ -0,0 +1,33 @@ + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children.html new file mode 100644 index 0000000000..1dc259564c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-children.html @@ -0,0 +1,32 @@ + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-jssubmit.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-jssubmit.html new file mode 100644 index 0000000000..6e71d958d6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-submit-remove-jssubmit.html @@ -0,0 +1,36 @@ + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-type-enumerated-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-type-enumerated-ascii-case-insensitive.html new file mode 100644 index 0000000000..30a2c24a80 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-type-enumerated-ascii-case-insensitive.html @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validation.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validation.html new file mode 100644 index 0000000000..f3b57fd296 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validation.html @@ -0,0 +1,29 @@ + + +button element validation + + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validationmessage.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validationmessage.html new file mode 100644 index 0000000000..a2572ed7be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validationmessage.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        button_validationMessage

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validity.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validity.html new file mode 100644 index 0000000000..acc02d92bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-validity.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        button_validity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate-readonly-attribute.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate-readonly-attribute.html new file mode 100644 index 0000000000..c4a05a4401 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate-readonly-attribute.html @@ -0,0 +1,14 @@ + + +Button element with "readonly" attribute shouldn't be barred from constraint validation + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate.html b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate.html new file mode 100644 index 0000000000..e91c5e3843 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-button-element/button-willvalidate.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        button_willValidate

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-datalist-element/datalistoptions.html b/testing/web-platform/tests/html/semantics/forms/the-datalist-element/datalistoptions.html new file mode 100644 index 0000000000..245d43cec4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-datalist-element/datalistoptions.html @@ -0,0 +1,43 @@ + + +Datalist element options + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-datalist-element/remove-datalist-crash.html b/testing/web-platform/tests/html/semantics/forms/the-datalist-element/remove-datalist-crash.html new file mode 100644 index 0000000000..b40d5feebe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-datalist-element/remove-datalist-crash.html @@ -0,0 +1,11 @@ + +Remove datalist element crash + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html new file mode 100644 index 0000000000..9e6e52d7b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html @@ -0,0 +1,54 @@ + + +HTML Test: HTMLFieldSetElement interface + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/README.md b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/README.md new file mode 100644 index 0000000000..b238a023dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/README.md @@ -0,0 +1,12 @@ +Fieldset accessibility tests +============================ + +These tests are intended to test the accessibility of the fieldset and legend elements. + +To run these tests, open the browser's developer tools and navigate to the Accessibility pane (may +need to activate it in Settings), or use an OS-level accessibility inspector, and verify that the +accessible name/role matches the expected accessible name/role. + +The following issue discusses ways to automate these tests: + +https://github.com/web-platform-tests/wpt/issues/12791 diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/aria-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/aria-manual.html new file mode 100644 index 0000000000..c61d62769a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/aria-manual.html @@ -0,0 +1,7 @@ + +fieldset accessibility test: ARIA +
                                                                                                                                                        +
                                                                                                                                                        Foo
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/baseline-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/baseline-manual.html new file mode 100644 index 0000000000..2ee1ab20e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/baseline-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: baseline + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-appearance-none-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-appearance-none-manual.html new file mode 100644 index 0000000000..dbc4edc2a2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-appearance-none-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: fieldset -webkit-appearance: none + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-contents-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-contents-manual.html new file mode 100644 index 0000000000..943a030337 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-contents-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: fieldset display: contents + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-none-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-none-manual.html new file mode 100644 index 0000000000..b45576036a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-display-none-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: fieldset display: none + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected no accessible node for id=fieldset. diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-div-display-contents-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-div-display-contents-manual.html new file mode 100644 index 0000000000..2eb01f2a71 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-div-display-contents-manual.html @@ -0,0 +1,13 @@ + +fieldset accessibility test: fieldset div display: contents + + +

                                                                                                                                                        +
                                                                                                                                                        + Foo + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-none-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-none-manual.html new file mode 100644 index 0000000000..4638a2b8d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-none-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: fieldset role=none + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected no accessible node for id=fieldset. diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-presentation-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-presentation-manual.html new file mode 100644 index 0000000000..e1360d29c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-role-presentation-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: fieldset role=presentation + +

                                                                                                                                                        +

                                                                                                                                                        Expected no accessible node for id=fieldset. diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-collapse-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-collapse-manual.html new file mode 100644 index 0000000000..a3dd273bbe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-collapse-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: fieldset visibility: collapse + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected no accessible node for id=fieldset. diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-hidden-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-hidden-manual.html new file mode 100644 index 0000000000..894f00af52 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/fieldset-visibility-hidden-manual.html @@ -0,0 +1,12 @@ + +fieldset accessibility test: fieldset visibility: hidden + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected no accessible node for id=fieldset. diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/flexbox-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/flexbox-manual.html new file mode 100644 index 0000000000..2d3d2a929c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/flexbox-manual.html @@ -0,0 +1,13 @@ + +fieldset accessibility test: flexbox + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/grid-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/grid-manual.html new file mode 100644 index 0000000000..9d966d0113 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/grid-manual.html @@ -0,0 +1,12 @@ + +fieldset accessibility test: grid + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-abspos-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-abspos-manual.html new file mode 100644 index 0000000000..019e63fcd3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-abspos-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: position: absolute legend + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-display-none-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-display-none-manual.html new file mode 100644 index 0000000000..bc5d9fb7f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-display-none-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend child display: none + + +

                                                                                                                                                        + FooBar + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-visibility-hidden-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-visibility-hidden-manual.html new file mode 100644 index 0000000000..01ceb9ec65 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-child-visibility-hidden-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend visibility: hidden + + +

                                                                                                                                                        + FooBar + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-contents-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-contents-manual.html new file mode 100644 index 0000000000..f9fd1a31b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-contents-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend display: contents + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-none-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-none-manual.html new file mode 100644 index 0000000000..14060b99f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-display-none-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend display: none + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-float-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-float-manual.html new file mode 100644 index 0000000000..40f2c4ac23 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-float-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: floating legend + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-role-group-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-role-group-manual.html new file mode 100644 index 0000000000..e15ff4d810 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-role-group-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: legend role=group aria-labelledby=fieldset + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-collapse-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-collapse-manual.html new file mode 100644 index 0000000000..c44bb1e888 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-collapse-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend visibility: collapse + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-hidden-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-hidden-manual.html new file mode 100644 index 0000000000..f989712565 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/legend-visibility-hidden-manual.html @@ -0,0 +1,11 @@ + +fieldset accessibility test: legend visibility: hidden + + +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/multiple-legends-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/multiple-legends-manual.html new file mode 100644 index 0000000000..5d25317ad0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/multiple-legends-manual.html @@ -0,0 +1,10 @@ + +fieldset accessibility test: multiple legends + +

                                                                                                                                                        +
                                                                                                                                                        + Foo + Bar + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/role-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/role-manual.html new file mode 100644 index 0000000000..d09c203b6b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/role-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: role +

                                                                                                                                                        + Foo + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible role for id=fieldset: "group" +

                                                                                                                                                        Expected accessible role for id=legend: No corresponding role diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/shadow-dom-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/shadow-dom-manual.html new file mode 100644 index 0000000000..bb93d07644 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/shadow-dom-manual.html @@ -0,0 +1,32 @@ + +fieldset accessibility test: shadow DOM + + + + + Foo + + +

                                                                                                                                                        Expected accessible name for id=fieldset: "" + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/title-attribute-and-empty-legend-manual.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/title-attribute-and-empty-legend-manual.html new file mode 100644 index 0000000000..0169a513a9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/accessibility/title-attribute-and-empty-legend-manual.html @@ -0,0 +1,8 @@ + +fieldset accessibility test: title attribute and empty legend + +

                                                                                                                                                        + + +
                                                                                                                                                        +

                                                                                                                                                        Expected accessible name for id=fieldset: "Foo" diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-001.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-001.html new file mode 100644 index 0000000000..02137ab97e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-001.html @@ -0,0 +1,78 @@ + + +Fieldset disabled + + + + +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-002.xhtml b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-002.xhtml new file mode 100644 index 0000000000..896d737df4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-002.xhtml @@ -0,0 +1,25 @@ + + + + + File input descendants of disabled fieldsets + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-003.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-003.html new file mode 100644 index 0000000000..de01eb57fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/disabled-003.html @@ -0,0 +1,39 @@ + + +Disable nested fieldsets with focused element + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + foo +
                                                                                                                                                        + bar + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-checkvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-checkvalidity.html new file mode 100644 index 0000000000..eeeca1853b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-checkvalidity.html @@ -0,0 +1,45 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        FieldSet_checkValidity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html new file mode 100644 index 0000000000..5ff0d7db41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html @@ -0,0 +1,74 @@ + + +Fieldset with intrinsic size + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Legend +
                                                                                                                                                        Contents
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-setcustomvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-setcustomvalidity.html new file mode 100644 index 0000000000..64aa374f19 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-setcustomvalidity.html @@ -0,0 +1,17 @@ + +fieldset setCustomValidity + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validationmessage.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validationmessage.html new file mode 100644 index 0000000000..14dda76a13 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validationmessage.html @@ -0,0 +1,41 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        FieldSet_validationMessage

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validity.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validity.html new file mode 100644 index 0000000000..7fd2d85656 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-validity.html @@ -0,0 +1,41 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        FieldSet_validity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-willvalidate.html b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-willvalidate.html new file mode 100644 index 0000000000..357c9c16fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-fieldset-element/fieldset-willvalidate.html @@ -0,0 +1,41 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        FieldSet_willValidate

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-in-inactive-document-crash.html new file mode 100644 index 0000000000..8a3543fcbc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-in-inactive-document-crash.html @@ -0,0 +1,6 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection-with-base-url.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection-with-base-url.html new file mode 100644 index 0000000000..67828a3077 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection-with-base-url.html @@ -0,0 +1,36 @@ + + +form.action with a base URL + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection.html new file mode 100644 index 0000000000..c92fd0f0cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-reflection.html @@ -0,0 +1,35 @@ + + +form.action + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission-with-base-url.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission-with-base-url.html new file mode 100644 index 0000000000..baee5500de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission-with-base-url.html @@ -0,0 +1,56 @@ + + +form action="" attribute effect on submission + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission.html new file mode 100644 index 0000000000..54ca7b5ff5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action-submission.html @@ -0,0 +1,56 @@ + + +form action="" attribute effect on submission + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action.html new file mode 100644 index 0000000000..14717c5e6a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-action.html @@ -0,0 +1,43 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        Form_action

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-autocomplete.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-autocomplete.html new file mode 100644 index 0000000000..fcd93ce2ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-autocomplete.html @@ -0,0 +1,130 @@ + + +form autocomplete attribute + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-checkvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-checkvalidity.html new file mode 100644 index 0000000000..941ab94d45 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-checkvalidity.html @@ -0,0 +1,47 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        Form_checkValidity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-filter.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-filter.html new file mode 100644 index 0000000000..693560188a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-filter.html @@ -0,0 +1,192 @@ + + +form.elements must contain all listed elements with the form owner + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-interfaces-01.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-interfaces-01.html new file mode 100644 index 0000000000..c8b4a6c71e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-interfaces-01.html @@ -0,0 +1,20 @@ + +form.elements: interfaces + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-matches.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-matches.html new file mode 100644 index 0000000000..7921627265 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-matches.html @@ -0,0 +1,46 @@ + +form.elements: matches + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-01.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-01.html new file mode 100644 index 0000000000..0b5aeb8ef5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-01.html @@ -0,0 +1,43 @@ + +form.elements: namedItem + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-02.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-02.html new file mode 100644 index 0000000000..c25e554de1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-nameditem-02.html @@ -0,0 +1,28 @@ + +form.elements: parsing + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-sameobject.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-sameobject.html new file mode 100644 index 0000000000..1c1aa5d3dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-elements-sameobject.html @@ -0,0 +1,20 @@ + + +Testing [SameObject] on the 'elements' attribute on the 'form' element + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html new file mode 100644 index 0000000000..a108ce8a93 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html @@ -0,0 +1,26 @@ + + +form.elements: indexed access reflects DOM order, not flat tree + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element.html new file mode 100644 index 0000000000..5ea96d3d1b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-indexed-element.html @@ -0,0 +1,45 @@ + + +form.elements: indexed + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-length.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-length.html new file mode 100644 index 0000000000..3326809fc6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-length.html @@ -0,0 +1,38 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        Form_length

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-nameditem.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-nameditem.html new file mode 100644 index 0000000000..7b7d573615 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-nameditem.html @@ -0,0 +1,418 @@ + + +Form named getter + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/form-requestsubmit.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-requestsubmit.html new file mode 100644 index 0000000000..cbc46cc7d3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/form-requestsubmit.html @@ -0,0 +1,215 @@ + +form.requestSubmit() tests + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action-with-base.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action-with-base.html new file mode 100644 index 0000000000..b3599a45e6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action-with-base.html @@ -0,0 +1,19 @@ + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action.html new file mode 100644 index 0000000000..c0c2ad0330 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-no-action.html @@ -0,0 +1,18 @@ + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action-and-base.sub.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action-and-base.sub.html new file mode 100644 index 0000000000..edb101bece --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action-and-base.sub.html @@ -0,0 +1,19 @@ + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action.sub.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action.sub.html new file mode 100644 index 0000000000..97e800a561 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/form-with-action.sub.html @@ -0,0 +1,18 @@ + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/target/form-action-url-target.html b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/target/form-action-url-target.html new file mode 100644 index 0000000000..d509f21924 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-form-element/resources/target/form-action-url-target.html @@ -0,0 +1,5 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-active-contenteditable.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-active-contenteditable.html new file mode 100644 index 0000000000..88a9a35cc5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-active-contenteditable.html @@ -0,0 +1,25 @@ + + + + + + + + + + + + + +anchor + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-contenteditable-navigate.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-contenteditable-navigate.html new file mode 100644 index 0000000000..e958f10df8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/anchor-contenteditable-navigate.html @@ -0,0 +1,25 @@ + + + + + + + + + + + + +anchor + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-dynamic.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-dynamic.html new file mode 100644 index 0000000000..68ea51185c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-dynamic.html @@ -0,0 +1,12 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-ref.html new file mode 100644 index 0000000000..675ba50914 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/auto-direction-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/button.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/button.html new file mode 100644 index 0000000000..3c826a9754 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/button.html @@ -0,0 +1,66 @@ + + +input type button + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/change-to-empty-value.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/change-to-empty-value.html new file mode 100644 index 0000000000..fd1eeb4584 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/change-to-empty-value.html @@ -0,0 +1,31 @@ + + +Change event when clearing an input + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur-with-click.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur-with-click.html new file mode 100644 index 0000000000..2d5d008622 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur-with-click.html @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur.html new file mode 100644 index 0000000000..cc88996fe7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-onblur.html @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-being-disabled.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-being-disabled.html new file mode 100644 index 0000000000..5f725b85f4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-being-disabled.html @@ -0,0 +1,90 @@ + + + + +Tests active state of checkbox/radio when pressing space key but it's disabled by a keydown event listener + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-prevented-default.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-prevented-default.html new file mode 100644 index 0000000000..877cd70e29 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-prevented-default.html @@ -0,0 +1,55 @@ + + + + +Tests active state of checkbox/radio when pressing space key but its default prevented + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-untrusted-event.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-untrusted-event.html new file mode 100644 index 0000000000..190757d8d3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkable-active-space-key-untrusted-event.html @@ -0,0 +1,48 @@ + + + + +Tests active state of checkbox/radio when pressing space key emulated with untrusted key events + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox-click-events.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox-click-events.html new file mode 100644 index 0000000000..5051fdd4e6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox-click-events.html @@ -0,0 +1,109 @@ + + +Checkbox click events + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox.html new file mode 100644 index 0000000000..c48083d685 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checkbox.html @@ -0,0 +1,149 @@ + + +input type checkbox + + + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/checked.xhtml b/testing/web-platform/tests/html/semantics/forms/the-input-element/checked.xhtml new file mode 100644 index 0000000000..70aeb51097 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/checked.xhtml @@ -0,0 +1,19 @@ + + + + +input@checked is immediately reflected to 'checked' IDL attribute + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/clone.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/clone.html new file mode 100644 index 0000000000..0f7e053baa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/clone.html @@ -0,0 +1,150 @@ + + +Test input value retention upon clone + + + +
                                                                                                                                                        +

                                                                                                                                                        This checkbox is initially unchecked.

                                                                                                                                                        +

                                                                                                                                                        This checkbox is initially checked.

                                                                                                                                                        +

                                                                                                                                                        This radiobutton is initially unchecked.

                                                                                                                                                        +

                                                                                                                                                        This radiobutton is initially checked.

                                                                                                                                                        +

                                                                                                                                                        This hidden field has the initial value "DEFAULT\nDEFAULT".

                                                                                                                                                        +

                                                                                                                                                        This text field has the initial value "DEFAULT".

                                                                                                                                                        +

                                                                                                                                                        This search field has the initial value "DEFAULT".

                                                                                                                                                        +

                                                                                                                                                        This phone number field has the initial value "DEFAULT".

                                                                                                                                                        +

                                                                                                                                                        This URL field has the initial value "https://default.invalid/".

                                                                                                                                                        +

                                                                                                                                                        This email field has the initial value "default@default.invalid".

                                                                                                                                                        +

                                                                                                                                                        This password field has the initial value "DEFAULT".

                                                                                                                                                        +

                                                                                                                                                        This date field has the initial value "2015-01-01".

                                                                                                                                                        +

                                                                                                                                                        This month field has the initial value "2015-01".

                                                                                                                                                        +

                                                                                                                                                        This week field has the initial value "2015-W01".

                                                                                                                                                        +

                                                                                                                                                        This time field has the initial value "12:00".

                                                                                                                                                        +

                                                                                                                                                        This datetime (local) field has the initial value "2015-01-01T12:00".

                                                                                                                                                        +

                                                                                                                                                        This number field has the initial value "1".

                                                                                                                                                        +

                                                                                                                                                        This range control has the initial value "1".

                                                                                                                                                        +

                                                                                                                                                        This color picker has the initial value "#FF0000".

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/cloning-steps.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/cloning-steps.html new file mode 100644 index 0000000000..fe468509e8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/cloning-steps.html @@ -0,0 +1,64 @@ + + +Cloning of input elements + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/color.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/color.html new file mode 100644 index 0000000000..6164815f66 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/color.html @@ -0,0 +1,45 @@ + + +Form input type=color + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/date.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/date.html new file mode 100644 index 0000000000..9b95b86b16 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/date.html @@ -0,0 +1,90 @@ + + + + Inputs Date + + + + + + + +

                                                                                                                                                        Inputs Date

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local-trailing-zeros.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local-trailing-zeros.html new file mode 100644 index 0000000000..0fb031d510 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local-trailing-zeros.html @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local.html new file mode 100644 index 0000000000..2fe24d7e8a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-local.html @@ -0,0 +1,42 @@ + + +Form input type=datetime-local + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-weekmonth.html new file mode 100644 index 0000000000..4a7b66ddd1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime-weekmonth.html @@ -0,0 +1,51 @@ + + + + Date and Time Inputs + + + + + + + + + + + + + + + + +

                                                                                                                                                        Date and Time Inputs

                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime.html new file mode 100644 index 0000000000..e762060ea7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/datetime.html @@ -0,0 +1,60 @@ + + + + Date and Time Inputs + + + + + + + + + + + + + + + + +

                                                                                                                                                        Date and Time Inputs

                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/defaultValue-clobbering.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/defaultValue-clobbering.html new file mode 100644 index 0000000000..41ff967c19 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/defaultValue-clobbering.html @@ -0,0 +1,36 @@ + + + + + + + + + + + + +
                                                                                                                                                        + email with leading whitespace: +
                                                                                                                                                        +
                                                                                                                                                        + number with trailing incomplete exponent: +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/disabled-click-picker-manual.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/disabled-click-picker-manual.html new file mode 100644 index 0000000000..b77f981e6c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/disabled-click-picker-manual.html @@ -0,0 +1,17 @@ + + +Disabled input elements must not open pickers +

                                                                                                                                                        + Click the Open buttons below. If clicking them does not open any pickers, then consider this as a passing test.
                                                                                                                                                        + (This is manual because we don't have an event to check whether the picker is opened or not.) +

                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/email-set-value.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/email-set-value.html new file mode 100644 index 0000000000..95245fb824 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/email-set-value.html @@ -0,0 +1,30 @@ + +Input Email setValue + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/email.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/email.html new file mode 100644 index 0000000000..c187d89bad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/email.html @@ -0,0 +1,66 @@ + +Input Email + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html new file mode 100644 index 0000000000..ed0b21e9f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html @@ -0,0 +1,39 @@ + + +HTMLInputElement Test: select event + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        Description

                                                                                                                                                        +

                                                                                                                                                        + This test validates that select characters in input element should fired select event. +

                                                                                                                                                        + +

                                                                                                                                                        Test steps:

                                                                                                                                                        +
                                                                                                                                                          +
                                                                                                                                                        1. + Select any numeric characters in the input flag below +
                                                                                                                                                        2. +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/file-manual.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/file-manual.html new file mode 100644 index 0000000000..9e2d47c423 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/file-manual.html @@ -0,0 +1,30 @@ + + +input type file + + + + +
                                                                                                                                                        +

                                                                                                                                                        Manual test: clicking on the input should open a prompt allowing you to select a file.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/files.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/files.html new file mode 100644 index 0000000000..43ebd71906 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/files.html @@ -0,0 +1,83 @@ + + +HTMLInputElement#files + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change-on-blur.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change-on-blur.html new file mode 100644 index 0000000000..23292d3a83 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change-on-blur.html @@ -0,0 +1,61 @@ + + +Input type switch on blur event should clean up properly + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change.html new file mode 100644 index 0000000000..982cda6c92 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/focus-dynamic-type-change.html @@ -0,0 +1,55 @@ + + +Input type switch on focused input shouldn't blur + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive-child.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive-child.html new file mode 100644 index 0000000000..92c9981a11 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive-child.html @@ -0,0 +1,5 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive.html new file mode 100644 index 0000000000..537500c91f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden-charset-case-sensitive.html @@ -0,0 +1,30 @@ + + + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden.html new file mode 100644 index 0000000000..9274b5cddb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/hidden.html @@ -0,0 +1,74 @@ + + + + Hidden input element + + + + + + + +

                                                                                                                                                        Hidden input element

                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/image-click-form-data.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/image-click-form-data.html new file mode 100644 index 0000000000..87b77e4805 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/image-click-form-data.html @@ -0,0 +1,28 @@ + + +Check form-data for image submit button with non-empty 'value' attribute + + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/image01-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/image01-ref.html new file mode 100644 index 0000000000..62c141d960 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/image01-ref.html @@ -0,0 +1,5 @@ + + +input type image reference file + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/image01.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/image01.html new file mode 100644 index 0000000000..e9028dceec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/image01.html @@ -0,0 +1,7 @@ + + +input type image + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-checkvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-checkvalidity.html new file mode 100644 index 0000000000..b336204fcc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-checkvalidity.html @@ -0,0 +1,44 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_checkValidity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-disabled-fieldset-dynamic.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-disabled-fieldset-dynamic.html new file mode 100644 index 0000000000..eefcd972bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-disabled-fieldset-dynamic.html @@ -0,0 +1,38 @@ + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-form-detach-style-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-form-detach-style-crash.html new file mode 100644 index 0000000000..5472563763 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-form-detach-style-crash.html @@ -0,0 +1,17 @@ + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-height.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-height.html new file mode 100644 index 0000000000..dea4f41765 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-height.html @@ -0,0 +1,42 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_height

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-importNode-to-detached-document-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-importNode-to-detached-document-crash.html new file mode 100644 index 0000000000..5e0cff4fa3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-importNode-to-detached-document-crash.html @@ -0,0 +1,11 @@ + + +

                                                                                                                                                        This test passes if it does not crash.

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-labels.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-labels.html new file mode 100644 index 0000000000..77f4d8b31a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-labels.html @@ -0,0 +1,49 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_labels

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-list.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-list.html new file mode 100644 index 0000000000..006a8fbd8f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-list.html @@ -0,0 +1,67 @@ + + + + input list attribute + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_list

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + +

                                                                                                                                                        + + + + + + + + + +

                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-seconds-leading-zeroes.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-seconds-leading-zeroes.html new file mode 100644 index 0000000000..d94bee1029 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-seconds-leading-zeroes.html @@ -0,0 +1,52 @@ + + + + + HTMLInputElement leading zeroes in seconds/millis + + + + +

                                                                                                                                                        input times and datetimes with leading zeroes in seconds/millis

                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-setcustomvalidity.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-setcustomvalidity.html new file mode 100644 index 0000000000..accb24d8f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-setcustomvalidity.html @@ -0,0 +1,17 @@ + +input setCustomValidity + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-weekmonth.html new file mode 100644 index 0000000000..c50f67fce5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown-weekmonth.html @@ -0,0 +1,22 @@ + + +Forms + + +

                                                                                                                                                        input_stepDown

                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown.html new file mode 100644 index 0000000000..3cd246f015 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepdown.html @@ -0,0 +1,43 @@ + + +Forms + + +

                                                                                                                                                        input_stepDown

                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup-weekmonth.html new file mode 100644 index 0000000000..09316b0854 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup-weekmonth.html @@ -0,0 +1,22 @@ + + +Forms + + +

                                                                                                                                                        input_stepUp

                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup.html new file mode 100644 index 0000000000..f6f97eecbe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-stepup.html @@ -0,0 +1,44 @@ + + +Forms + + +

                                                                                                                                                        input_stepUp

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-submit-remove-jssubmit.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-submit-remove-jssubmit.html new file mode 100644 index 0000000000..f992ff9ed5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-submit-remove-jssubmit.html @@ -0,0 +1,36 @@ + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-button.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-button.html new file mode 100644 index 0000000000..0f269355a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-button.html @@ -0,0 +1,51 @@ + + +input type button + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-empty-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-empty-crash.html new file mode 100644 index 0000000000..6e44250ccb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-empty-crash.html @@ -0,0 +1,8 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-value.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-value.html new file mode 100644 index 0000000000..74aeef7cd5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-change-value.html @@ -0,0 +1,33 @@ + + +Input type switch from / to color + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox-switch.tentative.window.js b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox-switch.tentative.window.js new file mode 100644 index 0000000000..6128a62a0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox-switch.tentative.window.js @@ -0,0 +1,19 @@ +test(t => { + const input = document.createElement("input"); + input.switch = true; + + assert_true(input.hasAttribute("switch")); + assert_equals(input.getAttribute("switch"), ""); + assert_equals(input.type, "text"); +}, "switch IDL attribute, setter"); + +test(t => { + const container = document.createElement("div"); + container.innerHTML = ""; + const input = container.firstChild; + + assert_true(input.hasAttribute("switch")); + assert_equals(input.getAttribute("switch"), ""); + assert_equals(input.type, "checkbox"); + assert_true(input.switch); +}, "switch IDL attribute, getter"); diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox.html new file mode 100644 index 0000000000..7dd2f26b12 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-checkbox.html @@ -0,0 +1,60 @@ + + +input type checkbox + + + + + + +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-number-rtl-invalid-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-number-rtl-invalid-crash.html new file mode 100644 index 0000000000..d749d1faad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-type-number-rtl-invalid-crash.html @@ -0,0 +1,11 @@ + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-types.js b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-types.js new file mode 100644 index 0000000000..4456751052 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-types.js @@ -0,0 +1,24 @@ +export default [ + "button", + "checkbox", + "color", + "date", + "datetime-local", + "email", + "file", + "hidden", + "image", + "month", + "number", + "password", + "radio", + "range", + "reset", + "search", + "submit", + "tel", + "text", + "time", + "url", + "week", +]; diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-untrusted-key-event.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-untrusted-key-event.html new file mode 100644 index 0000000000..eb96b6fd95 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-untrusted-key-event.html @@ -0,0 +1,225 @@ + + + +Forms + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validationmessage.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validationmessage.html new file mode 100644 index 0000000000..775c06f06e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validationmessage.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_validationMessage

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validity.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validity.html new file mode 100644 index 0000000000..719144d511 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-validity.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_validity

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-value-invalidstateerr.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-value-invalidstateerr.html new file mode 100644 index 0000000000..78e6624e7c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-value-invalidstateerr.html @@ -0,0 +1,41 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_value_INVALID_STATE_ERR

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-invalidstateerr.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-invalidstateerr.html new file mode 100644 index 0000000000..bd49a15fc8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-invalidstateerr.html @@ -0,0 +1,41 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_valueAsDate_INVALID_STATE_ERR

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-stepping.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-stepping.html new file mode 100644 index 0000000000..0985611031 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate-stepping.html @@ -0,0 +1,83 @@ + + + + valueAsDate stepping + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_valueAsDate_stepping

                                                                                                                                                        + +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate.html new file mode 100644 index 0000000000..894983add2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasdate.html @@ -0,0 +1,108 @@ + + + + + HTMLInputElement valueAsDate + + + + + + + +

                                                                                                                                                        input_valueAsDate

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-invalidstateerr.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-invalidstateerr.html new file mode 100644 index 0000000000..a3187ff3fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-invalidstateerr.html @@ -0,0 +1,39 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_valueAsNumber_INVALID_STATE_ERR

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-stepping.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-stepping.html new file mode 100644 index 0000000000..c93c25b23f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber-stepping.html @@ -0,0 +1,94 @@ + + + + valueAsNumber stepping + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_valueAsNumber_stepping

                                                                                                                                                        + +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber.html new file mode 100644 index 0000000000..1af75eafa3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-valueasnumber.html @@ -0,0 +1,151 @@ + + + + + HTMLInputElement valueAsNumber + + + + + + + +

                                                                                                                                                        input_valueAsNumber

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-whitespace.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-whitespace.html new file mode 100644 index 0000000000..8c3c20e877 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-whitespace.html @@ -0,0 +1,34 @@ + + + + Chrome whitespace bug + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-width.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-width.html new file mode 100644 index 0000000000..5278ff77e1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-width.html @@ -0,0 +1,42 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_width

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/input-willvalidate.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-willvalidate.html new file mode 100644 index 0000000000..e4bcf2e11e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/input-willvalidate.html @@ -0,0 +1,40 @@ + + + + Forms + + + + +

                                                                                                                                                        +

                                                                                                                                                        input_willValidate

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/invalid-datalist-options-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/invalid-datalist-options-crash.html new file mode 100644 index 0000000000..7cdd55196c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/invalid-datalist-options-crash.html @@ -0,0 +1,6 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/large-step-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/large-step-crash.html new file mode 100644 index 0000000000..6c7d577546 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/large-step-crash.html @@ -0,0 +1,9 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-manual.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-manual.html new file mode 100644 index 0000000000..fdf6c26441 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-manual.html @@ -0,0 +1,37 @@ + + + + + input max length + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        Type a letter anywhere into the input field (do not select any text, or otherwise manipulate the input)

                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-number.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-number.html new file mode 100644 index 0000000000..1e1d9f694c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength-number.html @@ -0,0 +1,19 @@ + +input type=number maxlength + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength.html new file mode 100644 index 0000000000..da5d18d00a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/maxlength.html @@ -0,0 +1,55 @@ + + + + input max length + + + + + + + +

                                                                                                                                                        Text input element

                                                                                                                                                        + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/minlength.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/minlength.html new file mode 100644 index 0000000000..6748e30eaf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/minlength.html @@ -0,0 +1,55 @@ + + + + input min length + + + + + + + +

                                                                                                                                                        Text input element

                                                                                                                                                        + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/month.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/month.html new file mode 100644 index 0000000000..99be9bca67 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/month.html @@ -0,0 +1,100 @@ + + + + Inputs Month + + + + + + + + + +

                                                                                                                                                        Inputs Month

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-cr.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-cr.html new file mode 100644 index 0000000000..06f07cbbd8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-cr.html @@ -0,0 +1 @@ + input multiline placeholder (CR) \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-crlf.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-crlf.html new file mode 100644 index 0000000000..b4336e24d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-crlf.html @@ -0,0 +1,19 @@ + + + +input multiline placeholder (CRLF) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-ref.html new file mode 100644 index 0000000000..2812f86e1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder-ref.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder.html new file mode 100644 index 0000000000..4d2ec43c3f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/multiline-placeholder.html @@ -0,0 +1,19 @@ + + + +input multiline placeholder + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/number-constraint-validation.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/number-constraint-validation.html new file mode 100644 index 0000000000..959726bb50 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/number-constraint-validation.html @@ -0,0 +1,42 @@ + + +Form input type=number constraint validation + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/number-disabled.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/number-disabled.html new file mode 100644 index 0000000000..11cb82fdda --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/number-disabled.html @@ -0,0 +1,18 @@ + +disabled works properly for number inputs + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/number.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/number.html new file mode 100644 index 0000000000..7d93f20898 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/number.html @@ -0,0 +1,57 @@ + + +Form input type=number + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/password-delete-space.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/password-delete-space.html new file mode 100644 index 0000000000..78b3c966b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/password-delete-space.html @@ -0,0 +1,20 @@ + +Backspace with trailing white space in password field + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/password.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/password.html new file mode 100644 index 0000000000..aac54aa1c7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/password.html @@ -0,0 +1,79 @@ + + +Password input element + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/pattern_attribute.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/pattern_attribute.html new file mode 100644 index 0000000000..93cbd2caec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/pattern_attribute.html @@ -0,0 +1,117 @@ + + +pattern attribute + + + + + + + +

                                                                                                                                                        pattern attribute

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update-ref.html new file mode 100644 index 0000000000..38da019539 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update.html new file mode 100644 index 0000000000..af0c0793ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/placeholder-update.html @@ -0,0 +1,14 @@ + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-disconnected-group-owner.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-disconnected-group-owner.html new file mode 100644 index 0000000000..60feb2b0ba --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-disconnected-group-owner.html @@ -0,0 +1,168 @@ + + + + + + + + Test for validity of disconnected radio buttons + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-double-activate-pseudo.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-double-activate-pseudo.html new file mode 100644 index 0000000000..287dc7d58e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-double-activate-pseudo.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-groupname-case.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-groupname-case.html new file mode 100644 index 0000000000..3c54aca3e7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-groupname-case.html @@ -0,0 +1,83 @@ + + +radio group name case-sensitive + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html new file mode 100644 index 0000000000..fc2796b041 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html @@ -0,0 +1,41 @@ + +Radio input cancel behavior reverts state + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-keyboard-navigation-order.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-keyboard-navigation-order.html new file mode 100644 index 0000000000..d019ca982c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-keyboard-navigation-order.html @@ -0,0 +1,70 @@ + + + + +Radio button group keyboard navigation order + + + + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-morphed.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-morphed.html new file mode 100644 index 0000000000..b7b8658948 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-morphed.html @@ -0,0 +1,17 @@ + +Morphed radio input + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-multiple-selected.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-multiple-selected.html new file mode 100644 index 0000000000..83d42032a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-multiple-selected.html @@ -0,0 +1,21 @@ + + + + +Multiple required input radio elements + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio.html new file mode 100644 index 0000000000..7f183f8367 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio.html @@ -0,0 +1,351 @@ + + +input type radio + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-2.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-2.html new file mode 100644 index 0000000000..3277dfc07f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-2.html @@ -0,0 +1,43 @@ + + +range input Tests + + + +
                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size-ref.html new file mode 100644 index 0000000000..48beaea3f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size-ref.html @@ -0,0 +1,97 @@ + + + + + Reference: type=range intrinsic size + + + + + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size.html new file mode 100644 index 0000000000..ce37faf89b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-intrinsic-size.html @@ -0,0 +1,85 @@ + + + + + Test: type=range intrinsic size + + + + + + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-added-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-added-repaint.html new file mode 100644 index 0000000000..344f36527b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-added-repaint.html @@ -0,0 +1,19 @@ + + +The range is repainted if a list ID is added + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-change-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-change-repaint.html new file mode 100644 index 0000000000..b5bee03b3b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-change-repaint.html @@ -0,0 +1,24 @@ + + +The range is repainted if its list attribute changes + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-duplicate-id-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-duplicate-id-repaint.html new file mode 100644 index 0000000000..0a2a90b500 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-duplicate-id-repaint.html @@ -0,0 +1,26 @@ + + +The range is repainted if the ID identifies a different list + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-nonexistent.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-nonexistent.html new file mode 100644 index 0000000000..72fb19b9c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-list-nonexistent.html @@ -0,0 +1,20 @@ + + +The range is repainted if the ID first identifies no list, then a list takes on that ID + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-add-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-add-repaint.html new file mode 100644 index 0000000000..31631b0c59 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-add-repaint.html @@ -0,0 +1,21 @@ + + +The range is repainted if an option is added to the range's list + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-remove-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-remove-repaint.html new file mode 100644 index 0000000000..672e371bfb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-remove-repaint.html @@ -0,0 +1,20 @@ + + +The range is repainted if an option is removed from the range's list + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-value-change-repaint.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-value-change-repaint.html new file mode 100644 index 0000000000..7dcace4e47 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-option-value-change-repaint.html @@ -0,0 +1,20 @@ + + +The range is repainted if the value of an option in the range's list changes + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.https.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.https.html new file mode 100644 index 0000000000..f73c5e6f63 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-restore-oninput-onchange-event.https.html @@ -0,0 +1,52 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value-ref.html new file mode 100644 index 0000000000..71a44cdf2f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value-ref.html @@ -0,0 +1,7 @@ + + +range input element setAttribute value appearance + +

                                                                                                                                                        Test passes if the range element below visually has its slider at 2/10 from the left

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value.html new file mode 100644 index 0000000000..3a03a5b6fe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-setattribute-value.html @@ -0,0 +1,27 @@ + + + + + + +range input element setAttribute value appearance + +

                                                                                                                                                        Test passes if the range element below visually has its slider at 2/10 from the left

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01-notref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01-notref.html new file mode 100644 index 0000000000..58192bec8e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01-notref.html @@ -0,0 +1,3 @@ + +LTR range input with datalist reference + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01.html new file mode 100644 index 0000000000..225422dc4d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-01.html @@ -0,0 +1,13 @@ + +LTR range input with datalist + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02-ref.html new file mode 100644 index 0000000000..3d5b323470 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02-ref.html @@ -0,0 +1,14 @@ + +RTL range input with datalist reference + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02.html new file mode 100644 index 0000000000..453e650b2f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-02.html @@ -0,0 +1,14 @@ + +RTL range input with datalist + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03-notref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03-notref.html new file mode 100644 index 0000000000..5c15233a31 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03-notref.html @@ -0,0 +1,9 @@ + +max and min attributes applied to range input with datalist reference + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03.html new file mode 100644 index 0000000000..e067013bdd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-03.html @@ -0,0 +1,14 @@ + +max and min attributes applied to range input with datalist + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04-ref.html new file mode 100644 index 0000000000..a6afaff7ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04-ref.html @@ -0,0 +1,7 @@ + +no range tick marks for disabled datalist elements reference + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04.html new file mode 100644 index 0000000000..6fb0e930a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-04.html @@ -0,0 +1,15 @@ + +no range tick marks for disabled datalist elements + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05-ref.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05-ref.html new file mode 100644 index 0000000000..f144af3880 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05-ref.html @@ -0,0 +1,7 @@ + +no range tick marks for range tick marks that are step mismatches reference + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05.html new file mode 100644 index 0000000000..a65c7b7946 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range-tick-marks-05.html @@ -0,0 +1,14 @@ + +no range tick marks for range tick marks that are step mismatches + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/range.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/range.html new file mode 100644 index 0000000000..27cc6abe9c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/range.html @@ -0,0 +1,245 @@ + + + + + Input Range + + + + + + + + + + + + + + + + + + + +

                                                                                                                                                        Input Range

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/required_attribute.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/required_attribute.html new file mode 100644 index 0000000000..63488e9f4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/required_attribute.html @@ -0,0 +1,34 @@ + + + + + Required Attribute + + + + + + + + + + + +

                                                                                                                                                        Required Attribute

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/reset.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/reset.html new file mode 100644 index 0000000000..9a97995426 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/reset.html @@ -0,0 +1,113 @@ + + +input type reset + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/image-submit-click.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/image-submit-click.html new file mode 100644 index 0000000000..8461a03d7a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/image-submit-click.html @@ -0,0 +1,15 @@ + +
                                                                                                                                                        + +
                                                                                                                                                        + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/loadresolver.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/loadresolver.html new file mode 100644 index 0000000000..14379dd922 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/loadresolver.html @@ -0,0 +1,6 @@ + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html new file mode 100644 index 0000000000..27044c3537 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html @@ -0,0 +1,14 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html.headers b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html.headers new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/range-restore-events.html.headers @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/show-picker-child-iframe.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/show-picker-child-iframe.html new file mode 100644 index 0000000000..07b72f02cb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/show-picker-child-iframe.html @@ -0,0 +1,26 @@ + +Test showPicker() in an iframe + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html new file mode 100644 index 0000000000..aa57bdebcc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html @@ -0,0 +1,14 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html.headers b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html.headers new file mode 100644 index 0000000000..4030ea1d3d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/resources/text-restore-events.html.headers @@ -0,0 +1 @@ +Cache-Control: no-store diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/search_input.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/search_input.html new file mode 100644 index 0000000000..7b63cd43e1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/search_input.html @@ -0,0 +1,35 @@ + + + + + Search Input + + + + + + + + + + + + + +

                                                                                                                                                        Search Input

                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-pointer.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-pointer.html new file mode 100644 index 0000000000..7f06ae24a2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-pointer.html @@ -0,0 +1,56 @@ + + + +Selecting texts across input element + + + + + + + + +
                                                                                                                                                        + foo
                                                                                                                                                        +
                                                                                                                                                        + bar +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-weekmonth.html new file mode 100644 index 0000000000..c0d36dded9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection-weekmonth.html @@ -0,0 +1,57 @@ + +Input element programmatic selection support + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/selection.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection.html new file mode 100644 index 0000000000..1f5c8378ff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/selection.html @@ -0,0 +1,140 @@ + +Input element programmatic selection support + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-cross-origin-iframe.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-cross-origin-iframe.html new file mode 100644 index 0000000000..c8197cc180 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-cross-origin-iframe.html @@ -0,0 +1,79 @@ + +Test showPicker() called from cross-origin iframe + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly.html new file mode 100644 index 0000000000..8fdffc158f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly.html @@ -0,0 +1,43 @@ + +Test showPicker() disabled/readonly requirement + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-user-gesture.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-user-gesture.html new file mode 100644 index 0000000000..6b94b4f0f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/show-picker-user-gesture.html @@ -0,0 +1,31 @@ + +Test showPicker() user gesture requirement + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/telephone.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/telephone.html new file mode 100644 index 0000000000..974cbaf88b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/telephone.html @@ -0,0 +1,84 @@ + + + + Input tel + + + + + + +

                                                                                                                                                        Input tel

                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/text.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/text.html new file mode 100644 index 0000000000..f30f9d39fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/text.html @@ -0,0 +1,104 @@ + + + + Text input element + + + + + + + +

                                                                                                                                                        Text input element

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/time-2.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-2.html new file mode 100644 index 0000000000..0ffec33bf5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-2.html @@ -0,0 +1,42 @@ + + +Form input type=time + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/time-datalist-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-datalist-crash.html new file mode 100644 index 0000000000..2964032e35 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-datalist-crash.html @@ -0,0 +1,15 @@ + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/time-focus-dynamic-value-change.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-focus-dynamic-value-change.html new file mode 100644 index 0000000000..95ccb1ff69 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/time-focus-dynamic-value-change.html @@ -0,0 +1,31 @@ + + +input type=date and input type=datetime handle focus state correctly + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/time.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/time.html new file mode 100644 index 0000000000..ec815d4cb3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/time.html @@ -0,0 +1,357 @@ + + + + + Input Time + + + + + + + +

                                                                                                                                                        Input Time

                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-file-to-text-crash.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-file-to-text-crash.html new file mode 100644 index 0000000000..5fb5000a26 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-file-to-text-crash.html @@ -0,0 +1,11 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state-weekmonth.html new file mode 100644 index 0000000000..cab8e3a625 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state-weekmonth.html @@ -0,0 +1,169 @@ + + +Input element's type attribute changes state + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state.html new file mode 100644 index 0000000000..5fb4cc9b56 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/type-change-state.html @@ -0,0 +1,166 @@ + + +Input element's type attribute changes state + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/url.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/url.html new file mode 100644 index 0000000000..aafa0ced9d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/url.html @@ -0,0 +1,59 @@ + + + + Input url + + + + + + +

                                                                                                                                                        Input url

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode-weekmonth.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode-weekmonth.html new file mode 100644 index 0000000000..c4a241016b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode-weekmonth.html @@ -0,0 +1,37 @@ + + +Input element value mode + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode.html new file mode 100644 index 0000000000..37f3a7bce9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/valueMode.html @@ -0,0 +1,304 @@ + + +Input element value mode + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/week.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/week.html new file mode 100644 index 0000000000..925acfdaf8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/week.html @@ -0,0 +1,41 @@ + + +Form input type=week + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-interactive-content.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-interactive-content.html new file mode 100644 index 0000000000..300d09cdda --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-interactive-content.html @@ -0,0 +1,111 @@ + + +Label event handling when a descendant interactive content is clicked + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-labelable-content.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-labelable-content.html new file mode 100644 index 0000000000..5563ef1e3c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-labelable-content.html @@ -0,0 +1,112 @@ + + +Label event handling when a descendant labelable but not interactive element is clicked + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-unlabelable-content.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-unlabelable-content.html new file mode 100644 index 0000000000..285cd8c041 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/clicking-noninteractive-unlabelable-content.html @@ -0,0 +1,130 @@ + + +Label event handling when a descendant noninteractive and unlabelable content is clicked + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/forward-focus-to-associated-element.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/forward-focus-to-associated-element.html new file mode 100644 index 0000000000..86e3f652af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/forward-focus-to-associated-element.html @@ -0,0 +1,99 @@ + +label element focus forwarding via "for" attribute or nested labelable element + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/iframe-label-attributes.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/iframe-label-attributes.html new file mode 100644 index 0000000000..3f08a29094 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/iframe-label-attributes.html @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/forms/the-label-element/label-attributes.sub.html b/testing/web-platform/tests/html/semantics/forms/the-label-element/label-attributes.sub.html new file mode 100644 index 0000000000..3c8591c7ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-label-element/label-attributes.sub.html @@ -0,0 +1,339 @@ + + +HTML Test: The label element + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-select.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-select.html new file mode 100644 index 0000000000..178d5a2711 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-select.html @@ -0,0 +1,37 @@ + + + + Test dialog modal is closed by escape key with select focused + + + + + + + + +

                                                                                                                                                        Test dialog modal is closed by escape key with select focused

                                                                                                                                                        + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling.html new file mode 100644 index 0000000000..e368bde6fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-canceling.html @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        You can't Escape when this textbox has focus:
                                                                                                                                                        +
                                                                                                                                                        You can Escape even if this textbox has focus:
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event-async.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event-async.html new file mode 100644 index 0000000000..0f8d40aa2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event-async.html @@ -0,0 +1,33 @@ + + + +dialog element: close() + + + + + + + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event.html new file mode 100644 index 0000000000..b7903ed461 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-event.html @@ -0,0 +1,47 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-via-attribute.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-via-attribute.html new file mode 100644 index 0000000000..5c2e70f87a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close-via-attribute.html @@ -0,0 +1,59 @@ + + + + + + + + + +hello world + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close.html new file mode 100644 index 0000000000..9029612b24 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-close.html @@ -0,0 +1,77 @@ + + +dialog element: close() + + + + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-enabled.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-enabled.html new file mode 100644 index 0000000000..87a130c6f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-enabled.html @@ -0,0 +1,16 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-previous-outside.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-previous-outside.html new file mode 100644 index 0000000000..43a17676ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-previous-outside.html @@ -0,0 +1,82 @@ + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +hello world + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested.html new file mode 100644 index 0000000000..2cd63eb796 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested.html @@ -0,0 +1,53 @@ + + +dialog focusing delegation: with two nested shadow trees + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html new file mode 100644 index 0000000000..7e57685425 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html @@ -0,0 +1,274 @@ + + +dialog focus delegation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusability.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusability.html new file mode 100644 index 0000000000..1e00086609 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusability.html @@ -0,0 +1,58 @@ + + +dialog element: focusability + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-disconnected.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-disconnected.html new file mode 100644 index 0000000000..bf621b640b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-disconnected.html @@ -0,0 +1,40 @@ + + + +Test focusing steps when dialog is disconnected + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-inert.html new file mode 100644 index 0000000000..003c456179 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-inert.html @@ -0,0 +1,48 @@ + + + +Test focusing steps when dialog is inert + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-prevent-autofocus.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-prevent-autofocus.html new file mode 100644 index 0000000000..4d1e792c1c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-focusing-steps-prevent-autofocus.html @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission-unusual.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission-unusual.html new file mode 100644 index 0000000000..ae0de29a89 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission-unusual.html @@ -0,0 +1,34 @@ + +Test dialog form submission, unusual cases + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission.html new file mode 100644 index 0000000000..5934485087 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission.html @@ -0,0 +1,131 @@ + + + +Test dialog form submission + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-inert.html new file mode 100644 index 0000000000..864420b9d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-inert.html @@ -0,0 +1,45 @@ + + + + + + + +Something + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-keydown-preventDefault.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-keydown-preventDefault.html new file mode 100644 index 0000000000..4a50b13c87 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-keydown-preventDefault.html @@ -0,0 +1,45 @@ + + + + Test cancel event with preventDefault on keydown event for dialog element + + + + + + + + +

                                                                                                                                                        Test cancel event with preventDefault on keydown event for dialog element

                                                                                                                                                        + +

                                                                                                                                                        Hello World

                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-no-throw-requested-state.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-no-throw-requested-state.html new file mode 100644 index 0000000000..c86cbe84a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-no-throw-requested-state.html @@ -0,0 +1,29 @@ + + + + + + +hello + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-not-in-tree-crash.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-not-in-tree-crash.html new file mode 100644 index 0000000000..fe3fab8ebb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-not-in-tree-crash.html @@ -0,0 +1,5 @@ + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open-2.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open-2.html new file mode 100644 index 0000000000..79120d07eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open-2.html @@ -0,0 +1,27 @@ + + + + + + + + +It's my dialog. + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open.html new file mode 100644 index 0000000000..e1f4c6ab82 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-open.html @@ -0,0 +1,43 @@ + + +dialog element: open + + + + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay-re-add-during-transition.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay-re-add-during-transition.html new file mode 100644 index 0000000000..30d104a973 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay-re-add-during-transition.html @@ -0,0 +1,32 @@ + + +dialog: close and re-add modal dialog during overlay transition + + + + +PASS +FAIL + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay.html new file mode 100644 index 0000000000..9cd2426b8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-overlay.html @@ -0,0 +1,36 @@ + +dialog: overlay + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-return-value.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-return-value.html new file mode 100644 index 0000000000..2a80de65a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-return-value.html @@ -0,0 +1,54 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html new file mode 100644 index 0000000000..54c2edab6b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-inert-crash.html @@ -0,0 +1,17 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-remove.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-remove.html new file mode 100644 index 0000000000..c2350c3042 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-remove.html @@ -0,0 +1,24 @@ + +dialog element: removing from document after showModal() + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html new file mode 100644 index 0000000000..47612e759e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html @@ -0,0 +1,188 @@ + + +dialog element: showModal() + + + + +
                                                                                                                                                        + + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + +

                                                                                                                                                        foobar

                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop-ref.html new file mode 100644 index 0000000000..4b31dc7062 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop-ref.html @@ -0,0 +1,5 @@ + + +Test that ::backdrop is not shown for non-open or non-modal dialogs. +The test passes if there is no red shown. + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop.html new file mode 100644 index 0000000000..fec4ba8587 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop.html @@ -0,0 +1,41 @@ + + + + + + +Test that ::backdrop is not shown for non-open or non-modal dialogs. +The test passes if there is no red shown. + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer-ref.html new file mode 100644 index 0000000000..7e6112b3ce --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer-ref.html @@ -0,0 +1,16 @@ + + +

                                                                                                                                                        Test that a non-top layer element doesn't share style with a top layer +element. The test passes if you see two boxes.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer.html new file mode 100644 index 0000000000..e4f4ce50b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer.html @@ -0,0 +1,18 @@ + + + + +

                                                                                                                                                        Test that a non-top layer element doesn't share style with a top layer +element. The test passes if you see two boxes.

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position-ref.html new file mode 100644 index 0000000000..c0b64e68bd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position-ref.html @@ -0,0 +1,18 @@ + + + + + + +

                                                                                                                                                        Bug 106538: Top layer fails for inline elements

                                                                                                                                                        +

                                                                                                                                                        This tests that position 'static' no longer computes to 'absolute' for an +element that has been removed from the top layer. The test passes if you see +a single line of text.

                                                                                                                                                        +This is the span. +This is the dialog following it. + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position.html new file mode 100644 index 0000000000..0dead33163 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position.html @@ -0,0 +1,35 @@ + + + + + + + + +

                                                                                                                                                        Bug 106538: Top layer fails for inline elements

                                                                                                                                                        +

                                                                                                                                                        This tests that position 'static' no longer computes to 'absolute' for an +element that has been removed from the top layer. The test passes if you see +a single line of text.

                                                                                                                                                        +This is the span. +This is the dialog following it. + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-contain-ancestor.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-contain-ancestor.html new file mode 100644 index 0000000000..5ee64fc1d9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-contain-ancestor.html @@ -0,0 +1,27 @@ + + +Test that a fixed positioned child of a dialog is aligned to the viewport + + + + + + +
                                                                                                                                                        + + Dialog should be centered. +
                                                                                                                                                        This fixed positioned element is aligned to viewport top-left.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fixed-position-cb-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fixed-position-cb-ref.html new file mode 100644 index 0000000000..d973c0876d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fixed-position-cb-ref.html @@ -0,0 +1,16 @@ + + +Test that a fixed positioned child of a dialog is aligned to the viewport + + + + + +
                                                                                                                                                        +Dialog should be centered. +
                                                                                                                                                        +
                                                                                                                                                        This fixed positioned element is aligned to viewport top-left.
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fo-ancestor.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fo-ancestor.html new file mode 100644 index 0000000000..2bc294be2f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-fo-ancestor.html @@ -0,0 +1,29 @@ + + +Test that a fixed positioned child of a dialog is aligned to the viewport + + + + + + + + + + Dialog should be centered. +
                                                                                                                                                        This fixed positioned element is aligned to viewport top-left.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-transformed-ancestor.tentative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-transformed-ancestor.tentative.html new file mode 100644 index 0000000000..527d508252 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-transformed-ancestor.tentative.html @@ -0,0 +1,27 @@ + + +Test that a fixed positioned child of a dialog is aligned to the viewport + + + + + + +
                                                                                                                                                        + + Dialog should be centered. +
                                                                                                                                                        This fixed positioned element is aligned to viewport top-left.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-will-change-ancestor.tentative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-will-change-ancestor.tentative.html new file mode 100644 index 0000000000..e9db7321cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/fixed-position-child-with-will-change-ancestor.tentative.html @@ -0,0 +1,27 @@ + + +Test that a fixed positioned child of a dialog is aligned to the viewport + + + + + + +
                                                                                                                                                        + + Dialog should be centered. +
                                                                                                                                                        This fixed positioned element is aligned to viewport top-left.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close.html new file mode 100644 index 0000000000..93baf65cf6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close.html @@ -0,0 +1,229 @@ + + + +Test focus is moved to the previously focused element when dialog is closed + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-previous-iframe.tentative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-previous-iframe.tentative.html new file mode 100644 index 0000000000..c31daa4876 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/focus-previous-iframe.tentative.html @@ -0,0 +1,52 @@ + + + +Test focus is moved to the previously focused element when dialog is closed + + + + + + + +Dialog in parent + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/green-dialog-and-backdrop.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/green-dialog-and-backdrop.html new file mode 100644 index 0000000000..cd23c32a06 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/green-dialog-and-backdrop.html @@ -0,0 +1,26 @@ + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        PASS if no red shows
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-does-not-match-disabled-selector.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-does-not-match-disabled-selector.html new file mode 100644 index 0000000000..b3b0c0a929 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-does-not-match-disabled-selector.html @@ -0,0 +1,35 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html new file mode 100644 index 0000000000..2ccc133285 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html @@ -0,0 +1,73 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-inlines.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-inlines.html new file mode 100644 index 0000000000..5ee4113985 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-inlines.html @@ -0,0 +1,85 @@ + + + + + + + + + + + +

                                                                                                                                                        +To test manually, click on all the "Click me"s. +The test fails if you see red. +

                                                                                                                                                        + + + +Click me + +
                                                                                                                                                        Click meeee
                                                                                                                                                        +Click me +
                                                                                                                                                        + Click meeee + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html new file mode 100644 index 0000000000..61e3ddeaf2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted-ref.html new file mode 100644 index 0000000000..1b757ecf62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted-ref.html @@ -0,0 +1,36 @@ + + + + + + +

                                                                                                                                                        Test that inert nodes are not painted as being selected. The test passes if +none of the text outside the dialog is highlighted when selected.

                                                                                                                                                        + +

                                                                                                                                                        Although not shown as selected, the inert nodes are in window.getSelection() +and copied to the clipboard, which is the same behavior as user-select: +none (crbug.com/147490).

                                                                                                                                                        + +
                                                                                                                                                        This text shouldn't be highlighted as selected. + + +
                                                                                                                                                        I'm selectable.
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted.html new file mode 100644 index 0000000000..f6db38ed72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted.html @@ -0,0 +1,33 @@ + + + + + + + + +

                                                                                                                                                        Test that inert nodes are not painted as being selected. The test passes if +none of the text outside the dialog is highlighted when selected.

                                                                                                                                                        + +

                                                                                                                                                        Although not shown as selected, the inert nodes are in window.getSelection() +and copied to the clipboard, which is the same behavior as user-select: +none (crbug.com/147490).

                                                                                                                                                        + +
                                                                                                                                                        +This text shouldn't be highlighted as selected. + + +
                                                                                                                                                        I'm selectable.
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-uneditable.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-uneditable.html new file mode 100644 index 0000000000..9141a383b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-uneditable.html @@ -0,0 +1,55 @@ + + + + + + + + + + + +I'm not editable while the dialog is showing. + + I'm editable. + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unfocusable.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unfocusable.html new file mode 100644 index 0000000000..74379f50e2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unfocusable.html @@ -0,0 +1,75 @@ + + + + + + + + + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        I'm editable
                                                                                                                                                        + I'm tabindexed.
                                                                                                                                                        + + Link + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unselectable.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unselectable.html new file mode 100644 index 0000000000..2889e1e90a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unselectable.html @@ -0,0 +1,19 @@ + + + + + + + + +Here is a text node you can't select while the dialog is open. +I'm selectable. + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-svg-hittest.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-svg-hittest.html new file mode 100644 index 0000000000..579aca7775 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inert-svg-hittest.html @@ -0,0 +1,68 @@ + + +Hit-testing with SVG made inert by modal dialog + + + + + + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + +Content behind the open modal dialog should not be clickable + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html new file mode 100644 index 0000000000..1a509f7f36 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html @@ -0,0 +1,131 @@ + + +Inertness with modal dialogs and iframes + + + +
                                                                                                                                                        +
                                                                                                                                                        + (main document: outer text) + + + (main document: dialog) + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-ancestor-is-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-ancestor-is-inert.html new file mode 100644 index 0000000000..c6bcb5d4ca --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-ancestor-is-inert.html @@ -0,0 +1,101 @@ + + + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity-ref.html new file mode 100644 index 0000000000..b50e6ae026 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity-ref.html @@ -0,0 +1,22 @@ + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Test passes if you see a green backdrop at half opacity.
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity.html new file mode 100644 index 0000000000..09c31ce2af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-opacity.html @@ -0,0 +1,19 @@ + + + + + + +Test passes if you see a green backdrop at half opacity. + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-ref.html new file mode 100644 index 0000000000..d703b7f28e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-ref.html @@ -0,0 +1,42 @@ + + + +Test for the default user agent style of dialog::backdrop. The test passes if +there is a green box, above a very lightly translucent gray box spanning the +viewport. +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop.html new file mode 100644 index 0000000000..55d7132f8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop.html @@ -0,0 +1,21 @@ + + + + + +Test for the default user agent style of dialog::backdrop. The test passes if +there is a green box, above a very lightly translucent gray box spanning the +viewport. + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-blocks-mouse-events.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-blocks-mouse-events.html new file mode 100644 index 0000000000..f6c0ec0ccb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-blocks-mouse-events.html @@ -0,0 +1,101 @@ + + + + + + + + + + + +

                                                                                                                                                        +To test manually, move the mouse to the blue box, click, and then move the +mouse outside. Then repeat for the red box. The test succeeds if both boxes +turn green +

                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-ref.html new file mode 100644 index 0000000000..7ac66f5095 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-ref.html @@ -0,0 +1,18 @@ + + +Reference: Test that display: contents; on modal dialog & ::backdrop acts like display: block + + +

                                                                                                                                                        Test passes if there is a green dialog

                                                                                                                                                        +

                                                                                                                                                        Dialog is display:block

                                                                                                                                                        +

                                                                                                                                                        Dialog::backdrop is display:block

                                                                                                                                                        +Dialog Contents + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html new file mode 100644 index 0000000000..032033de01 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html @@ -0,0 +1,28 @@ + + +Test that display: contents; on modal dialog & ::backdrop acts like display: block + + + + + +

                                                                                                                                                        Test passes if there is a green dialog

                                                                                                                                                        +

                                                                                                                                                        Dialog is display:

                                                                                                                                                        +

                                                                                                                                                        Dialog::backdrop is display:

                                                                                                                                                        +Dialog Contents + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content-ref.html new file mode 100644 index 0000000000..10c9897c63 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content-ref.html @@ -0,0 +1,42 @@ + + + +Test for a modal dialog with ::before, ::after, and ::backdrop. The test passes +if there are two green boxes, one with the texts "::before" and "::after" in it. +
                                                                                                                                                        +
                                                                                                                                                        ::before
                                                                                                                                                        +
                                                                                                                                                        ::after
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content.html new file mode 100644 index 0000000000..96b97f8ec3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content.html @@ -0,0 +1,59 @@ + + + + + +Test for a modal dialog with ::before, ::after, and ::backdrop. The test passes +if there are two green boxes, one with the texts "::before" and "::after" in it. + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe-ref.html new file mode 100644 index 0000000000..b6c52b7d7d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe.html new file mode 100644 index 0000000000..f6440583fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-iframe.html @@ -0,0 +1,18 @@ + +Modal dialog inside iframe should not generate box + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object-ref.html new file mode 100644 index 0000000000..38e15c1d79 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object-ref.html @@ -0,0 +1,2 @@ + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object.html new file mode 100644 index 0000000000..728748a7ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-object.html @@ -0,0 +1,17 @@ + +Modal dialog inside object should not generate box + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer-ref.html new file mode 100644 index 0000000000..c837503caf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer-ref.html @@ -0,0 +1,18 @@ + + + + + + +

                                                                                                                                                        The test passes if you see a green square near the top of the viewport. +

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer.html new file mode 100644 index 0000000000..75727b42f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer.html @@ -0,0 +1,26 @@ + + + +Modal dialog inside replaced renderer should not generate box + + + + + +

                                                                                                                                                        The test passes if you see a green square near the top of the viewport. +

                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column-ref.html new file mode 100644 index 0000000000..0310d1ba24 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column-ref.html @@ -0,0 +1,14 @@ + + + + + + +

                                                                                                                                                        The test passes if you see no green rectangle. + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column.html new file mode 100644 index 0000000000..3d72826b96 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column.html @@ -0,0 +1,26 @@ + + + +Modal dialog inside display: table-column should not generate box + + + + + +

                                                                                                                                                        The test passes if you see no green rectangle. +

                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-visibility-hidden.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-visibility-hidden.html new file mode 100644 index 0000000000..abba08cfde --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-visibility-hidden.html @@ -0,0 +1,39 @@ + + +Test that modal dialogs have visibility: visible set from the UA sheet + + + + + + +
                                                                                                                                                        + This is a dialog +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html new file mode 100644 index 0000000000..638217f021 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html @@ -0,0 +1,32 @@ + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-selection.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-selection.html new file mode 100644 index 0000000000..0242080268 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-selection.html @@ -0,0 +1,68 @@ + + +Content selection in modal dialog + + + + + + + +123456789A + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling-ref.html new file mode 100644 index 0000000000..38b628c309 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling-ref.html @@ -0,0 +1,20 @@ + + + + + + +

                                                                                                                                                        Bug 103477: Make +NodeRenderingContext::parentRenderer and nextRenderer top layer aware +

                                                                                                                                                        The test passes if you see a green rectangle in the center of the viewport. +

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling.html new file mode 100644 index 0000000000..85cc61890a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling.html @@ -0,0 +1,25 @@ + + + + + + + + +

                                                                                                                                                        Bug 103477: Make +NodeRenderingContext::parentRenderer and nextRenderer top layer aware +

                                                                                                                                                        The test passes if you see a green rectangle in the center of the viewport. +

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/multiple-centered-dialogs.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/multiple-centered-dialogs.html new file mode 100644 index 0000000000..70bb3810e2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/multiple-centered-dialogs.html @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-does-not-block-mouse-events.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-does-not-block-mouse-events.html new file mode 100644 index 0000000000..b550ba288e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-does-not-block-mouse-events.html @@ -0,0 +1,52 @@ + + + + + + + + + + + +

                                                                                                                                                        +To test manually, click the red box. The test succeeds if the red box turns green. +

                                                                                                                                                        + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-layout.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-layout.html new file mode 100644 index 0000000000..248bec86f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/non-modal-dialog-layout.html @@ -0,0 +1,102 @@ + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + It is my dialog. +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/pass-dialog-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/pass-dialog-ref.html new file mode 100644 index 0000000000..6f1a8fde21 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/pass-dialog-ref.html @@ -0,0 +1,9 @@ + +CSS Test Reference + +PASS + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/remove-dialog-should-unblock-document.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/remove-dialog-should-unblock-document.html new file mode 100644 index 0000000000..2f2fbad1fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/remove-dialog-should-unblock-document.html @@ -0,0 +1,34 @@ + + + + + + + + + This is a dialog + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer-ref.html new file mode 100644 index 0000000000..0856d6f9f1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer-ref.html @@ -0,0 +1,30 @@ + + + + + + + +

                                                                                                                                                        Bug 105489: Elements must be reattached when inserted/removed from top layer +

                                                                                                                                                        The test passes if you see a green rectangle stacked on top of a blue rectangle. +

                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer.html new file mode 100644 index 0000000000..b0e50e3869 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer.html @@ -0,0 +1,44 @@ + + + + + + + + +

                                                                                                                                                        Bug 105489: Elements must be reattached when inserted/removed from top layer +

                                                                                                                                                        The test passes if you see a green rectangle stacked on top of a blue rectangle. +

                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/common.js b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/common.js new file mode 100644 index 0000000000..c72ed7f19c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/common.js @@ -0,0 +1,18 @@ +function waitUntilLoadedAndAutofocused() { + return new Promise(function(resolve) { + var loaded = false; + var autofocused = false; + window.addEventListener('load', function() { + loaded = true; + if (autofocused) + resolve(); + }, false); + document.addEventListener('focusin', function() { + if (autofocused) + return; + autofocused = true; + if (loaded) + resolve(); + }, false); + }); +} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/dialog.css b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/dialog.css new file mode 100644 index 0000000000..571e7b8b6f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/dialog.css @@ -0,0 +1,14 @@ +.pseudodialog { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + width: fit-content; + height: fit-content; + margin: auto; + border: solid; + padding: 1em; + background: white; + color: black; +} diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/inert-focus-in-frames-frame1.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/inert-focus-in-frames-frame1.html new file mode 100644 index 0000000000..c5566bc092 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/resources/inert-focus-in-frames-frame1.html @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/simulated-click-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/simulated-click-inert.html new file mode 100644 index 0000000000..8ff8a7e86c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/simulated-click-inert.html @@ -0,0 +1,33 @@ + + + + + + + + + + + +

                                                                                                                                                        Ensure that simulated click is still dispatched to an inert node. +To test manually, click the CLICK ME label and verify it does change the value of the checkbox.

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/submit-dialog-close-event.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/submit-dialog-close-event.html new file mode 100644 index 0000000000..5954993d19 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/submit-dialog-close-event.html @@ -0,0 +1,34 @@ + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html new file mode 100644 index 0000000000..3be8213cd4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html @@ -0,0 +1,40 @@ + + + + + + + + + + + +
                                                                                                                                                        Click me too
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block-ref.html new file mode 100644 index 0000000000..40b72cf5ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block-ref.html @@ -0,0 +1,22 @@ + + + + + + +

                                                                                                                                                        +This tests that a modal dialog's containing block is in the initial containing block and that it is unaffected by +ancestor elements with overflow or opacity. +

                                                                                                                                                        + This dialog should be onscreen with a width of 90% of the page. It is the child of an narrow element + positioned off screen, but the containing block of a top layer element is the initial containing block, so its + position and percent lengths are relative to that. +
                                                                                                                                                        +
                                                                                                                                                        + This dialog should be unaffected by its ancestor with overflow. It should not be clipped. +
                                                                                                                                                        +
                                                                                                                                                        + This dialog should be unaffected by its ancestor with opacity. +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block.html new file mode 100644 index 0000000000..0886c2cd2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block.html @@ -0,0 +1,39 @@ + + + + + + + + +

                                                                                                                                                        +This tests that a modal dialog's containing block is in the initial containing block and that it is unaffected by +ancestor elements with overflow or opacity. +

                                                                                                                                                        + + This dialog should be unaffected by its ancestor with opacity. + +
                                                                                                                                                        +
                                                                                                                                                        + + This dialog should be unaffected by its ancestor with overflow. It should not be clipped. + +
                                                                                                                                                        +
                                                                                                                                                        + + This dialog should be onscreen with a width of 90% of the page. It is the child of an narrow element + positioned off screen, but the containing block of a top layer element is the initial containing block, so its + position and percent lengths are relative to that. + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none-ref.html new file mode 100644 index 0000000000..1880668cc3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none-ref.html @@ -0,0 +1,19 @@ + + + + + + + +This tests that a top layer element is not rendered if it, or an ancestor, has display: none. +It passes if you see a green rectangle stacked on top of a blue rectangle, and see no red rectangles. + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html new file mode 100644 index 0000000000..ba790c1db9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html @@ -0,0 +1,60 @@ + + + + + + + + +This tests that a top layer element is not rendered if it, or an ancestor, has display: none. +It passes if you see a green rectangle stacked on top of a blue rectangle, and see no red rectangles. + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting-ref.html new file mode 100644 index 0000000000..0a2936abbe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting-ref.html @@ -0,0 +1,26 @@ + + + + + + +This tests that top layer elements are stacked correctly even if nested in the DOM tree. +The test passes if you see no red rectangles and see 3 rectangles stacked in the following order (from bottom to top): yellow, blue, green. + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting.html new file mode 100644 index 0000000000..9e0616e952 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting.html @@ -0,0 +1,66 @@ + + + + + + + + +This tests that top layer elements are stacked correctly even if nested in the DOM tree. +The test passes if you see no red rectangles and see 3 rectangles stacked in the following order (from bottom to top): yellow, blue, green. + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-clip.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-clip.html new file mode 100644 index 0000000000..6e3c52aa02 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-clip.html @@ -0,0 +1,29 @@ + + +Test that parent clip-path does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-filter.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-filter.html new file mode 100644 index 0000000000..589d539779 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-filter.html @@ -0,0 +1,30 @@ + + +Test that parent filter does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-mask.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-mask.html new file mode 100644 index 0000000000..8ba3ed47c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-mask.html @@ -0,0 +1,30 @@ + + +Test that parent mask does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html new file mode 100644 index 0000000000..46c5de2a6d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html @@ -0,0 +1,30 @@ + + +Test that parent opacity does not affect top layer elements + + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-clip.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-clip.html new file mode 100644 index 0000000000..d805954969 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-clip.html @@ -0,0 +1,35 @@ + + +Test that parent overflow: clip; does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-hidden.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-hidden.html new file mode 100644 index 0000000000..f5389ddc09 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-hidden.html @@ -0,0 +1,34 @@ + + +Test that parent overflow: hidden; does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-scroll.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-scroll.html new file mode 100644 index 0000000000..a230defeea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-overflow-scroll.html @@ -0,0 +1,35 @@ + + +Test that parent overflow: scroll; does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-transform.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-transform.html new file mode 100644 index 0000000000..ac6f3cffc3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-transform.html @@ -0,0 +1,29 @@ + + +Test that parent transform does not affect top layer elements + + + + + + +
                                                                                                                                                        + PASS if no red shows +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-ref.html new file mode 100644 index 0000000000..01eff8c4de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-ref.html @@ -0,0 +1,22 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-relative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-relative.html new file mode 100644 index 0000000000..0dbef7d2ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-relative.html @@ -0,0 +1,28 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-static.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-static.html new file mode 100644 index 0000000000..86d8c89f88 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position-static.html @@ -0,0 +1,28 @@ + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position.html new file mode 100644 index 0000000000..1fdbca5c1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-position.html @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html new file mode 100644 index 0000000000..7aadaf51b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html @@ -0,0 +1,15 @@ + + + + + Shown modal dialog where the popover attribute is removed + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html new file mode 100644 index 0000000000..3827e90c5b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html @@ -0,0 +1,18 @@ + + + + + + Shown modal dialog where the popover attribute is removed + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd-ref.html new file mode 100644 index 0000000000..392d1ca46e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd-ref.html @@ -0,0 +1,19 @@ + + + + + + + +

                                                                                                                                                        Bug 105489: Elements must be reattached when inserted/removed from top layer +

                                                                                                                                                        The test passes if you see a green rectangle stacked on top of a blue rectangle. + +

                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd.html new file mode 100644 index 0000000000..4fdd28820d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd.html @@ -0,0 +1,46 @@ + + + + + + + + + +

                                                                                                                                                        Bug 105489: Elements must be reattached when inserted/removed from top layer +

                                                                                                                                                        The test passes if you see a green rectangle stacked on top of a blue rectangle. + +

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic-ref.html new file mode 100644 index 0000000000..6ddb317633 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic-ref.html @@ -0,0 +1,19 @@ + + + + + + + +This tests top layer element stacking order after dynamically calling show/close and removal from the DOM tree. +The test passes if you see a green rectangle stacked on top of a blue rectangle, and see no red rectangles. + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic.html new file mode 100644 index 0000000000..ebccdc66cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic.html @@ -0,0 +1,55 @@ + + + + + + + + + +This tests top layer element stacking order after dynamically calling show/close and removal from the DOM tree. +The test passes if you see a green rectangle stacked on top of a blue rectangle, and see no red rectangles. + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-ref.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-ref.html new file mode 100644 index 0000000000..b271ef47b4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-ref.html @@ -0,0 +1,40 @@ + + + + + + + +
                                                                                                                                                        + This white box is the topmost modal dialog. It should be on top of everything. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + This green box is also a modal dialog. It should be rendered above the red and yellow regions. +
                                                                                                                                                        +
                                                                                                                                                        A transform within the dialog's subtree.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + This shows z-index stacking within the dialog's subtree. The cyan box should be on top of the magenta one. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        This is part of the green dialog.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking.tentative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking.tentative.html new file mode 100644 index 0000000000..6407ef23c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking.tentative.html @@ -0,0 +1,56 @@ + + + + + + + + + + + + This white box is the topmost modal dialog. It should be on top of everything. + +
                                                                                                                                                        + + This green box is also a modal dialog. It should be rendered above the red and yellow regions. +
                                                                                                                                                        +
                                                                                                                                                        A transform within the dialog's subtree.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + This shows z-index stacking within the dialog's subtree. The cyan box should be on top of the magenta one. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        This is part of the green dialog.
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/activation-behavior.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/activation-behavior.html new file mode 100644 index 0000000000..4a3693bd2d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/activation-behavior.html @@ -0,0 +1,134 @@ + + +summary element: activation behavior + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Summary 1 + Summary 2 +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Summary 1 + Summary 2 +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-with-inline-element.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-with-inline-element.html new file mode 100644 index 0000000000..6910a5de93 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-with-inline-element.html @@ -0,0 +1,77 @@ + + +summary element: clicking on anchor containing inline element + + + + + + +
                                                                                                                                                        + Anchor text is wrapped with <i> tag permalink +

                                                                                                                                                        asdf

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + This one uses <span>. permalink +

                                                                                                                                                        asdf

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + <circle> + + + + +

                                                                                                                                                        asdf

                                                                                                                                                        +
                                                                                                                                                        + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-without-link.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-without-link.html new file mode 100644 index 0000000000..edaf786b25 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/anchor-without-link.html @@ -0,0 +1,40 @@ + + +summary element: clicking on anchor without link + + + + + + +
                                                                                                                                                        + Details +

                                                                                                                                                        Text

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + Details +

                                                                                                                                                        Text

                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/click-behavior-optional.tentative.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/click-behavior-optional.tentative.html new file mode 100644 index 0000000000..4418413fef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/click-behavior-optional.tentative.html @@ -0,0 +1,39 @@ + + +summary element: click behavior + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + Summary +

                                                                                                                                                        Contents

                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/display-table-with-rt-crash.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/display-table-with-rt-crash.html new file mode 100644 index 0000000000..57cc45478e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/display-table-with-rt-crash.html @@ -0,0 +1,9 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/summary-untrusted-key-event.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/summary-untrusted-key-event.html new file mode 100644 index 0000000000..21b66d52e7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-summary-element/summary-untrusted-key-event.html @@ -0,0 +1,104 @@ + + + +Summary + + + + +
                                                                                                                                                        +
                                                                                                                                                        + Summary + Details +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/interfaces.html b/testing/web-platform/tests/html/semantics/interfaces.html new file mode 100644 index 0000000000..dc7b600e0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interfaces.html @@ -0,0 +1,74 @@ + + +Test of interfaces + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/interfaces.js b/testing/web-platform/tests/html/semantics/interfaces.js new file mode 100644 index 0000000000..05fc82f767 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interfaces.js @@ -0,0 +1,150 @@ +var elements = [ + ["a", "Anchor"], + ["abbr", ""], + ["acronym", ""], + ["address", ""], + ["applet", "Unknown"], + ["area", "Area"], + ["article", ""], + ["aside", ""], + ["audio", "Audio"], + ["b", ""], + ["base", "Base"], + ["basefont", ""], + ["bdi", ""], + ["bdo", ""], + ["bgsound", "Unknown"], + ["big", ""], + ["blink", "Unknown"], + ["blockquote", "Quote"], + ["body", "Body"], + ["br", "BR"], + ["button", "Button"], + ["canvas", "Canvas"], + ["caption", "TableCaption"], + ["center", ""], + ["cite", ""], + ["code", ""], + ["col", "TableCol"], + ["colgroup", "TableCol"], + ["command", "Unknown"], + ["data", "Data"], + ["datalist", "DataList"], + ["dd", ""], + ["del", "Mod"], + ["details", "Details"], + ["dfn", ""], + ["dialog", "Dialog"], + ["dir", "Directory"], + ["directory", "Unknown"], + ["div", "Div"], + ["dl", "DList"], + ["dt", ""], + ["em", ""], + ["embed", "Embed"], + ["fieldset", "FieldSet"], + ["figcaption", ""], + ["figure", ""], + ["font", "Font"], + ["foo-BAR", "Unknown"], // not a valid custom element name + ["foo-bar", ""], // valid custom element name + ["foo", "Unknown"], + ["footer", ""], + ["form", "Form"], + ["frame", "Frame"], + ["frameset", "FrameSet"], + ["h1", "Heading"], + ["h2", "Heading"], + ["h3", "Heading"], + ["h4", "Heading"], + ["h5", "Heading"], + ["h6", "Heading"], + ["head", "Head"], + ["header", ""], + ["hgroup", ""], + ["hr", "HR"], + ["html", "Html"], + ["i", ""], + ["iframe", "IFrame"], + ["image", "Unknown"], + ["img", "Image"], + ["input", "Input"], + ["ins", "Mod"], + ["isindex", "Unknown"], + ["kbd", ""], + ["keygen", "Unknown"], + ["label", "Label"], + ["legend", "Legend"], + ["li", "LI"], + ["link", "Link"], + ["listing", "Pre"], + ["main", ""], + ["map", "Map"], + ["mark", ""], + ["marquee", "Marquee"], + ["menu", "Menu"], + ["meta", "Meta"], + ["meter", "Meter"], + ["mod", "Unknown"], + ["multicol", "Unknown"], + ["nav", ""], + ["nextid", "Unknown"], + ["nobr", ""], + ["noembed", ""], + ["noframes", ""], + ["noscript", ""], + ["object", "Object"], + ["ol", "OList"], + ["optgroup", "OptGroup"], + ["option", "Option"], + ["output", "Output"], + ["p", "Paragraph"], + ["param", "Param"], + ["permission", "Permission"], + ["picture", "Picture"], + ["plaintext", ""], + ["pre", "Pre"], + ["progress", "Progress"], + ["q", "Quote"], + ["quasit", "Unknown"], + ["rb", ""], + ["rp", ""], + ["rt", ""], + ["rtc", ""], + ["ruby", ""], + ["s", ""], + ["samp", ""], + ["script", "Script"], + ["section", ""], + ["select", "Select"], + ["slot", "Slot"], + ["small", ""], + ["source", "Source"], + ["spacer", "Unknown"], + ["span", "Span"], + ["strike", ""], + ["strong", ""], + ["style", "Style"], + ["sub", ""], + ["summary", ""], + ["sup", ""], + ["table", "Table"], + ["tbody", "TableSection"], + ["td", "TableCell"], + ["textarea", "TextArea"], + ["tfoot", "TableSection"], + ["th", "TableCell"], + ["thead", "TableSection"], + ["time", "Time"], + ["title", "Title"], + ["tr", "TableRow"], + ["track", "Track"], + ["tt", ""], + ["u", ""], + ["ul", "UList"], + ["var", ""], + ["video", "Video"], + ["wbr", ""], + ["xmp", "Pre"], + ["\u00E5-bar", "Unknown"], // not a valid custom element name +]; diff --git a/testing/web-platform/tests/html/semantics/invokers/idlharness.tentative.html b/testing/web-platform/tests/html/semantics/invokers/idlharness.tentative.html new file mode 100644 index 0000000000..b215f65813 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/idlharness.tentative.html @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invokeelement-interface.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invokeelement-interface.tentative.html new file mode 100644 index 0000000000..b003daf20d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invokeelement-interface.tentative.html @@ -0,0 +1,93 @@ + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invokeevent-dispatch-shadow.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invokeevent-dispatch-shadow.tentative.html new file mode 100644 index 0000000000..84337d5723 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invokeevent-dispatch-shadow.tentative.html @@ -0,0 +1,104 @@ + + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invokeevent-interface.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invokeevent-interface.tentative.html new file mode 100644 index 0000000000..82910b3d44 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invokeevent-interface.tentative.html @@ -0,0 +1,166 @@ + + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-button-event-dispatch.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-button-event-dispatch.tentative.html new file mode 100644 index 0000000000..b19c1d3adc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-button-event-dispatch.tentative.html @@ -0,0 +1,119 @@ + + + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-fullscreen-behavior.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-fullscreen-behavior.tentative.html new file mode 100644 index 0000000000..b72020283e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-fullscreen-behavior.tentative.html @@ -0,0 +1,175 @@ + + + + + + + + + + + +
                                                                                                                                                        + Fullscreen content + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-generic-eventtarget-crash.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-generic-eventtarget-crash.tentative.html new file mode 100644 index 0000000000..b2179640dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-generic-eventtarget-crash.tentative.html @@ -0,0 +1,18 @@ + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-audio-behavior.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-audio-behavior.tentative.html new file mode 100644 index 0000000000..f3abeae165 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-audio-behavior.tentative.html @@ -0,0 +1,285 @@ + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-details-behavior.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-details-behavior.tentative.html new file mode 100644 index 0000000000..c6735e2611 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-details-behavior.tentative.html @@ -0,0 +1,218 @@ + + + + + + + + + + + +
                                                                                                                                                        + Details Contents +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-popover-behavior.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-popover-behavior.tentative.html new file mode 100644 index 0000000000..03eba22285 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-popover-behavior.tentative.html @@ -0,0 +1,209 @@ + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-video-behavior.tentative.html b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-video-behavior.tentative.html new file mode 100644 index 0000000000..5bbcd83e72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/invoketarget-on-video-behavior.tentative.html @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/invokers/resources/invoker-utils.js b/testing/web-platform/tests/html/semantics/invokers/resources/invoker-utils.js new file mode 100644 index 0000000000..317945502d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/invokers/resources/invoker-utils.js @@ -0,0 +1,12 @@ +function waitForRender() { + return new Promise(resolve => requestAnimationFrame(() => requestAnimationFrame(resolve))); +} +async function clickOn(element) { + const actions = new test_driver.Actions(); + await waitForRender(); + await actions.pointerMove(0, 0, {origin: element}) + .pointerDown({button: actions.ButtonType.LEFT}) + .pointerUp({button: actions.ButtonType.LEFT}) + .send(); + await waitForRender(); +} diff --git a/testing/web-platform/tests/html/semantics/links/META.yml b/testing/web-platform/tests/html/semantics/links/META.yml new file mode 100644 index 0000000000..b2167370d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/META.yml @@ -0,0 +1,2 @@ +suggested_reviewers: + - annevk diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html new file mode 100644 index 0000000000..466868dd7b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header No Referrer When Downgrade Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html new file mode 100644 index 0000000000..cd7a1804f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header No Referrer Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html new file mode 100644 index 0000000000..98115aa653 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Origin When Cross Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin.html new file mode 100644 index 0000000000..194ca9d4ad --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-same-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-same-origin.html new file mode 100644 index 0000000000..eb86708d5b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-same-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Same Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html new file mode 100644 index 0000000000..f6514ff2ae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Strict Origin When Cross Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html new file mode 100644 index 0000000000..4aa311e833 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Strict Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html new file mode 100644 index 0000000000..59742404fe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Origin Header Unsafe Url Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.html new file mode 100644 index 0000000000..189e2e66d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.html @@ -0,0 +1,19 @@ + + + + + Ping attribute Origin no Referrer Policy + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.js b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.js new file mode 100644 index 0000000000..acc62ef93b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-origin.js @@ -0,0 +1,40 @@ +const RESOURCES_DIR = "/html/semantics/links/downloading-resources/resources/"; + +function testOriginHeader(expectedOrigin) { + var id = self.token(); + let testUrl = RESOURCES_DIR + "inspect-header.py?header=origin&cmd=put&id=" + id; + + promise_test(function(test) { + const anchor = document.getElementById("a"); + anchor.setAttribute("ping", testUrl); + anchor.click(); + return pollResult(id) .then(result => { + assert_equals(result, expectedOrigin, "Correct origin header result"); + }); + }, "Test origin header " + RESOURCES_DIR); +} + +// Sending a ping is an asynchronous and non-blocking request to a web server. +// We may have to create a poll loop to get result from server +function pollResult(id) { + let checkUrl = RESOURCES_DIR + "inspect-header.py?header=origin&cmd=get&id=" + id; + + return new Promise(resolve => { + function checkResult() { + fetch(checkUrl).then( + function(response) { + assert_equals(response.status, 200, "Inspect header response's status is 200"); + let result = response.headers.get("x-request-origin"); + + if (result != undefined) { + resolve(result); + } else { + step_timeout(checkResult.bind(this), 100); + } + }); + } + + checkResult(); + }); + +} diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer-when-downgrade.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer-when-downgrade.html new file mode 100644 index 0000000000..96c19d1d0e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer-when-downgrade.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header No Referrer When Downgrade Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer.html new file mode 100644 index 0000000000..065063075c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-no-referrer.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header No Referrer Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin-when-cross-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin-when-cross-origin.html new file mode 100644 index 0000000000..f0394261a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin-when-cross-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Origin When Cross Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin.html new file mode 100644 index 0000000000..bef435581c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-same-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-same-origin.html new file mode 100644 index 0000000000..19b2d022af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-same-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Same Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin-when-cross-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin-when-cross-origin.html new file mode 100644 index 0000000000..95132eee5c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin-when-cross-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Strict Origin When Cross Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin.html new file mode 100644 index 0000000000..e2678e8de8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-strict-origin.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Strict Origin Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-unsafe-url.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-unsafe-url.html new file mode 100644 index 0000000000..cc3d1dde86 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer-unsafe-url.html @@ -0,0 +1,20 @@ + + + + + Ping attribute Referrer Header Unsafe Url Policy + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.html b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.html new file mode 100644 index 0000000000..5e2d136443 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.html @@ -0,0 +1,19 @@ + + + + + Ping attribute no Referrer Header given + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.js b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.js new file mode 100644 index 0000000000..818649fbff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/header-referrer.js @@ -0,0 +1,40 @@ +const RESOURCES_DIR = "/html/semantics/links/downloading-resources/resources/"; + +function testReferrerHeader(expectedReferrer) { + let id = self.token(); + let testUrl = RESOURCES_DIR + "inspect-header.py?header=referer&cmd=put&id=" + id; + + promise_test(function(test) { + const anchor = document.getElementById("a"); + anchor.setAttribute("ping", testUrl); + anchor.click(); + return pollResult(id) .then(result => { + assert_equals(result, expectedReferrer, "Correct referrer header result"); + }); + }, "Test referer header " + RESOURCES_DIR); +} + +// Sending a ping is an asynchronous and non-blocking request to a web server. +// We may have to create a poll loop to get result from server +function pollResult(id) { + let checkUrl = RESOURCES_DIR + "inspect-header.py?header=referer&cmd=get&id=" + id; + + return new Promise(resolve => { + function checkResult() { + fetch(checkUrl).then( + function(response) { + assert_equals(response.status, 200, "Inspect header response's status is 200"); + let result = response.headers.get("x-request-referer"); + + if (result != undefined) { + resolve(result); + } else { + step_timeout(checkResult.bind(this), 100); + } + }); + } + + checkResult(); + }); + +} diff --git a/testing/web-platform/tests/html/semantics/links/downloading-resources/resources/inspect-header.py b/testing/web-platform/tests/html/semantics/links/downloading-resources/resources/inspect-header.py new file mode 100644 index 0000000000..2c68e475ff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/downloading-resources/resources/inspect-header.py @@ -0,0 +1,18 @@ +def main(request, response): + headers = [(b"Content-Type", b"text/plain")] + command = request.GET.first(b"cmd").lower() + test_id = request.GET.first(b"id") + header = request.GET.first(b"header") + if command == b"put": + request.server.stash.put(test_id, request.headers.get(header, b"")) + + elif command == b"get": + stashed_header = request.server.stash.take(test_id) + if stashed_header is not None: + headers.append((b"x-request-" + header, stashed_header)) + + else: + response.set_error(400, u"Bad Command") + return b"ERROR: Bad Command!" + + return headers, b"" diff --git a/testing/web-platform/tests/html/semantics/links/following-hyperlinks/activation-behavior.window.js b/testing/web-platform/tests/html/semantics/links/following-hyperlinks/activation-behavior.window.js new file mode 100644 index 0000000000..d530642b9e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/following-hyperlinks/activation-behavior.window.js @@ -0,0 +1,50 @@ +["a", + "area"].forEach(type => { + + const followed = type === "a" ? true : false; + async_test(t => { + const target = document.createElement("iframe"), + link = document.createElement(type); + t.add_cleanup(() => target.remove()); + target.name = "certifiedrandom" + type; + link.target = "certifiedrandom" + type; + link.href = "/"; + document.body.appendChild(target); + target.onload = t.step_func(() => { + if(target.contentWindow.location.href === "about:blank") + return; + if(followed) { + assert_equals(target.contentWindow.location.pathname, "/"); + t.done(); + } else { + assert_unreached(); + } + }); + link.click(); + t.step_timeout(() => { + if(followed) { + assert_unreached(); + } else { + t.done(); + } + }, 500); + }, "<" + type + "> that is not connected should " + (followed ? "" : "not ") + "be followed"); + + async_test(t => { + const target = document.createElement("iframe"), + doc = document.implementation.createDocument("", ""), + link = doc.createElementNS("http://www.w3.org/1999/xhtml", type); + t.add_cleanup(() => target.remove()); + target.name = "certifiedrandom2" + type; + link.target = "certifiedrandom2" + type; + link.href = "/"; + document.body.appendChild(target); + target.onload = t.step_func(() => { + if(target.contentWindow.location.href === "about:blank") + return; + assert_unreached(); + }); + link.click(); + t.step_timeout(() => t.done(), 500); + }, "<" + type + "> that is from an inactive document should not be followed"); +}); diff --git a/testing/web-platform/tests/html/semantics/links/following-hyperlinks/active-document.window.js b/testing/web-platform/tests/html/semantics/links/following-hyperlinks/active-document.window.js new file mode 100644 index 0000000000..efa16e7d17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/following-hyperlinks/active-document.window.js @@ -0,0 +1,23 @@ +["a", + "area", + "link"].forEach(type => { + async_test(t => { + const frame = document.createElement("iframe"), + link = document.createElement(type); + t.add_cleanup(() => frame.remove()); + frame.onload = t.step_func(() => { + // See https://github.com/whatwg/html/issues/490 + if(frame.contentWindow.location.href === "about:blank") + return; + link.click(); // must be ignored because document is not active + t.step_timeout(() => { + assert_equals(frame.contentWindow.location.pathname, "/common/blank.html"); + t.done(); + }, 500); + }); + document.body.appendChild(frame); + frame.contentDocument.body.appendChild(link); + link.href = "/"; + frame.src = "/common/blank.html"; + }, "<" + type + "> in navigated away + + + + diff --git a/testing/web-platform/tests/html/semantics/links/hyperlink-auditing/resources/stash-headers.py b/testing/web-platform/tests/html/semantics/links/hyperlink-auditing/resources/stash-headers.py new file mode 100644 index 0000000000..a0d4a38812 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/hyperlink-auditing/resources/stash-headers.py @@ -0,0 +1,27 @@ +import json +from wptserve.utils import isomorphic_decode + +def main(request, response): + key = request.GET[b"id"] + + if request.method == "POST": + content_type = request.headers.get(b"content-type", b"no content-type header") + ping_from = request.headers.get(b"ping-from", b"no ping-from header") + ping_to = request.headers.get(b"ping-to", b"no ping-to header") + + value = json.dumps({ + 'content-type': isomorphic_decode(content_type), + 'ping-from': isomorphic_decode(ping_from), + 'ping-to': isomorphic_decode(ping_to) + }) + request.server.stash.put(key, value) + + return (204, [], "") + + elif request.method == "GET": + value = request.server.stash.take(key) + if value is None: + value = "\"no headers yet\"" + return (200, [("Content-Type", "application/json")], str(value)) + + return (405, [], "") diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_attribute-getter-setter.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_attribute-getter-setter.html new file mode 100644 index 0000000000..2db3082e21 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_attribute-getter-setter.html @@ -0,0 +1,65 @@ + + + + +HTMLAnchorElement getters and setters + + +anchor + + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_getter.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_getter.html new file mode 100644 index 0000000000..759eada220 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_getter.html @@ -0,0 +1,48 @@ + + + + +HTMLAnchorElement getters test + + +a1 +a2 +a3 +a4 +a5 +a6 +a7 +a8 +a9 +a10 + + + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_noopener.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_noopener.html new file mode 100644 index 0000000000..95ab1c81fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_noopener.html @@ -0,0 +1,78 @@ + + +Test behavior of rel="noopener" links + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-parsable-url-getter-setter.window.js b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-parsable-url-getter-setter.window.js new file mode 100644 index 0000000000..587f9b9c46 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-parsable-url-getter-setter.window.js @@ -0,0 +1,54 @@ +[ + { + "property": "origin", + "set": null + }, + { + "property": "protocol", + "get": ":", + "set": "https" + }, + { + "property": "username" + }, + { + "property": "password" + }, + { + "property": "host" + }, + { + "property": "hostname" + }, + { + "property": "port", + "set": "8000" + }, + { + "property": "pathname" + }, + { + "property": "search" + }, + { + "property": "hash" + } +].forEach(({ property, get = "", set = "string" }) => { + ["a", "area"].forEach(name => { + test(() => { + const link = document.createElement(name); + link.href = "http://test:test/"; // non-parsable URL + assert_equals(link[property], get); + }, `<${name} href="http://test:test/">.${property} getter`); + + if (set !== null) { + test(() => { + const link = document.createElement(name); + link.href = "http://test:test/"; // non-parsable URL + link[property] = set; + assert_equals(link[property], get); + assert_equals(link.href, "http://test:test/"); + }, `<${name} href="http://test:test/">.${property} setter`); + } + }); +}); diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-opaque-path-url-getter-setter.window.js b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-opaque-path-url-getter-setter.window.js new file mode 100644 index 0000000000..9549c6e2a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-opaque-path-url-getter-setter.window.js @@ -0,0 +1,59 @@ +[ + { + "property": "origin", + "get": "null", + "set": null + }, + { + "property": "protocol", + "get": "non-special:", + "set": "super-special", + "setget": "super-special:" + }, + { + "property": "username" + }, + { + "property": "password" + }, + { + "property": "host", + }, + { + "property": "hostname", + }, + { + "property": "port", + "set": "8000" + }, + { + "property": "pathname", + "get": "opaque", + "setget": "opaque" + }, + { + "property": "search", + "setget": "?string" + }, + { + "property": "hash", + "setget": "#string" + } +].forEach(({ property, get = "", set = "string", setget = get }) => { + ["a", "area"].forEach(name => { + test(() => { + const link = document.createElement(name); + link.href = "non-special:opaque"; + assert_equals(link[property], get); + }, `<${name} href="non-special:opaque">.${property} getter`); + + if (set !== null) { + test(() => { + const link = document.createElement(name); + link.href = "non-special:opaque"; + link[property] = set; + assert_equals(link[property], setget); + }, `<${name} href="non-special:opaque">.${property} setter`); + } + }); +}); diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-url-getter-setter.window.js b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-url-getter-setter.window.js new file mode 100644 index 0000000000..de528a2f97 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/non-special-url-getter-setter.window.js @@ -0,0 +1,63 @@ +[ + { + "property": "origin", + "get": "null", + "set": null + }, + { + "property": "protocol", + "get": "non-special:", + "set": "super-special", + "setget": "super-special:" + }, + { + "property": "username" + }, + { + "property": "password" + }, + { + "property": "host", + "get": "test:9001", + "setget": "string:9001" + }, + { + "property": "hostname", + "get": "test" + }, + { + "property": "port", + "get": "9001", + "set": "8000" + }, + { + "property": "pathname", + "get": "/", + "setget": "/string" + }, + { + "property": "search", + "setget": "?string" + }, + { + "property": "hash", + "setget": "#string" + } +].forEach(({ property, get = "", set = "string", setget = set }) => { + ["a", "area"].forEach(name => { + test(() => { + const link = document.createElement(name); + link.href = "non-special://test:9001/"; + assert_equals(link[property], get); + }, `<${name} href="non-special://test:9001/">.${property} getter`); + + if (set !== null) { + test(() => { + const link = document.createElement(name); + link.href = "non-special://test:9001/"; + link[property] = set; + assert_equals(link[property], setget); + }, `<${name} href="non-special://test:9001/">.${property} setter`); + } + }); +}); diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-popup.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-popup.html new file mode 100644 index 0000000000..2057dbf0be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-popup.html @@ -0,0 +1,19 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-1.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-1.html new file mode 100644 index 0000000000..0dbd14275c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-1.html @@ -0,0 +1,4 @@ + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-2.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-2.html new file mode 100644 index 0000000000..dd2d719134 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/noopener-target-2.html @@ -0,0 +1,8 @@ + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/target_blank_implicit_noopener.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/target_blank_implicit_noopener.html new file mode 100644 index 0000000000..bf6a1ae5bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/support/target_blank_implicit_noopener.html @@ -0,0 +1,6 @@ + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener.html new file mode 100644 index 0000000000..73eebaff70 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener.html @@ -0,0 +1,58 @@ + + + + + + Test behavior of target=_blank links + + + + + Click me + Click me + Click me + Click me + Click me + Click me + Click me + Click me + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener_base.html b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener_base.html new file mode 100644 index 0000000000..3da6a49ef8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener_base.html @@ -0,0 +1,59 @@ + + + + + + Test behavior of base target=_blank links + + + + + + Click me + Click me + Click me + Click me + Click me + Click me + Click me + Click me + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css-ref.html b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css-ref.html new file mode 100644 index 0000000000..ec961eac15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css-ref.html @@ -0,0 +1,5 @@ + + +Reference of Alternate css + +
                                                                                                                                                        foobar
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css.html b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css.html new file mode 100644 index 0000000000..366d6c5593 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-css.html @@ -0,0 +1,7 @@ + + +Alternate css + + + +
                                                                                                                                                        foobar
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/alternate-import.css b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-import.css new file mode 100644 index 0000000000..7db3df1d78 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/alternate-import.css @@ -0,0 +1,3 @@ +body { + background-color: black; +} diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/alternate.css b/testing/web-platform/tests/html/semantics/links/linktypes/alternate.css new file mode 100644 index 0000000000..b101ab91f0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/alternate.css @@ -0,0 +1,5 @@ +@import url("alternate-import.css"); + +div { + background-color: red; +} diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-lower.css b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-lower.css new file mode 100644 index 0000000000..a19c9dfd72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-lower.css @@ -0,0 +1 @@ +#z-lower:after { content: "PASS"; color: green; } diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-mixed.css b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-mixed.css new file mode 100644 index 0000000000..7389ea1a1a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-mixed.css @@ -0,0 +1 @@ +#z-mixed:after { content: "PASS"; color: green; } diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-other.css b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-other.css new file mode 100644 index 0000000000..a6c2616d86 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-other.css @@ -0,0 +1 @@ +#z-other:after { content: "FAIL"; color: red; } diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-ref.html b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-ref.html new file mode 100644 index 0000000000..5ac2432547 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive-ref.html @@ -0,0 +1,9 @@ + + + +

                                                                                                                                                        text/css treated as CSS? +

                                                                                                                                                        TeXt/CsS treated as CSS? +

                                                                                                                                                        text/cſs ignored? diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.css b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.css new file mode 100644 index 0000000000..5d647d0f2e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.css @@ -0,0 +1,3 @@ +p:after { font-weight: bold; } +p:after { content: "FAIL"; color: red; } +#z-other:after { content: "PASS"; color: green; } diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.html b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.html new file mode 100644 index 0000000000..39fd5520d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/link-type-stylesheet/process-stylesheet-linked-resource-ascii-case-insensitive.html @@ -0,0 +1,14 @@ + + + + + + + + + + + +

                                                                                                                                                        text/css treated as CSS? +

                                                                                                                                                        TeXt/CsS treated as CSS? +

                                                                                                                                                        text/cſs ignored? diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/original-id.json b/testing/web-platform/tests/html/semantics/links/linktypes/original-id.json new file mode 100644 index 0000000000..1e5f7b5ed3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/original-id.json @@ -0,0 +1 @@ +{"original_id":"linkTypes"} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/links/linktypes/preferred.css b/testing/web-platform/tests/html/semantics/links/linktypes/preferred.css new file mode 100644 index 0000000000..54b95ac280 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/links/linktypes/preferred.css @@ -0,0 +1,3 @@ +div { + border: 4px solid green; +} diff --git a/testing/web-platform/tests/html/semantics/permission-element/no-end-tag-no-contents.html b/testing/web-platform/tests/html/semantics/permission-element/no-end-tag-no-contents.html new file mode 100644 index 0000000000..5fcce1421b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/permission-element/no-end-tag-no-contents.html @@ -0,0 +1,27 @@ + + + + + + +this is some text + + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/popovers/WEB_FEATURES.yml b/testing/web-platform/tests/html/semantics/popovers/WEB_FEATURES.yml new file mode 100644 index 0000000000..e1b9f82de3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/WEB_FEATURES.yml @@ -0,0 +1,3 @@ +features: +- name: popover + files: "**" diff --git a/testing/web-platform/tests/html/semantics/popovers/hide-other-popover-side-effects.html b/testing/web-platform/tests/html/semantics/popovers/hide-other-popover-side-effects.html new file mode 100644 index 0000000000..7cc95a95e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/hide-other-popover-side-effects.html @@ -0,0 +1,21 @@ + + + + + + +

                                                                                                                                                        popover1
                                                                                                                                                        +
                                                                                                                                                        popover2
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/invoker-show-crash.html b/testing/web-platform/tests/html/semantics/popovers/invoker-show-crash.html new file mode 100644 index 0000000000..7da57f9788 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/invoker-show-crash.html @@ -0,0 +1,12 @@ + + + + + + +
                                                                                                                                                        popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/label-in-invoker.html b/testing/web-platform/tests/html/semantics/popovers/label-in-invoker.html new file mode 100644 index 0000000000..bf8ab9710d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/label-in-invoker.html @@ -0,0 +1,23 @@ + + + + + + + + + +
                                                                                                                                                        popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/light-dismiss-event-ordering.html b/testing/web-platform/tests/html/semantics/popovers/light-dismiss-event-ordering.html new file mode 100644 index 0000000000..be39050ac6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/light-dismiss-event-ordering.html @@ -0,0 +1,82 @@ + + + + + + + + + + + + +
                                                                                                                                                        popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display-ref.html new file mode 100644 index 0000000000..9530e7d3c4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display-ref.html @@ -0,0 +1,24 @@ + + + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html new file mode 100644 index 0000000000..435929a6c1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-change-display.tentative.html @@ -0,0 +1,51 @@ + + + + + + + + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html new file mode 100644 index 0000000000..55a11fafdb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-none.tentative.html @@ -0,0 +1,34 @@ + + +Tests that a popover can be anchored to an unrendered element. + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-ref.html new file mode 100644 index 0000000000..f701810da2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display-ref.html @@ -0,0 +1,29 @@ + + + + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html new file mode 100644 index 0000000000..d50dd6c857 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-display.tentative.html @@ -0,0 +1,109 @@ + + + + + + + + + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + X +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-idl-property.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-idl-property.tentative.html new file mode 100644 index 0000000000..1e255339f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-idl-property.tentative.html @@ -0,0 +1,52 @@ + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        This is a popover
                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        Anchored div
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-multicol-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-multicol-display.tentative.html new file mode 100644 index 0000000000..fe65ec5ba4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-multicol-display.tentative.html @@ -0,0 +1,62 @@ + +Tests popovers with implicit anchors in out-of-flow boxes + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display-ref.html new file mode 100644 index 0000000000..9942b41e36 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display-ref.html @@ -0,0 +1,57 @@ + + + + + + + + + + +
                                                                                                                                                        + Baz +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display.tentative.html new file mode 100644 index 0000000000..b60ff49e09 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nested-display.tentative.html @@ -0,0 +1,56 @@ + + + + + + + + + + + +
                                                                                                                                                        + Baz +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nesting.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nesting.tentative.html new file mode 100644 index 0000000000..c3ea4f2165 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-nesting.tentative.html @@ -0,0 +1,56 @@ + + +Popover anchor nesting + + + + + + + + + + + + + + +
                                                                                                                                                        This is popover 1
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display-ref.html new file mode 100644 index 0000000000..926a171e9a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display-ref.html @@ -0,0 +1,32 @@ + + + +
                                                                                                                                                        + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html new file mode 100644 index 0000000000..7ed6cf1adf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-scroll-display.tentative.html @@ -0,0 +1,86 @@ + + + + + + + + +
                                                                                                                                                        + +

                                                                                                                                                        There should be a green box attached to the right side of each orange box.

                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html new file mode 100644 index 0000000000..ae2a3a8e41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-anchor-transition.tentative.tentative.html @@ -0,0 +1,34 @@ + + +Tests transitioning display property of anchored popover + + + + + + + + +
                                                                                                                                                        + Popover +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-and-svg-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-and-svg-ref.html new file mode 100644 index 0000000000..db52e77d2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-and-svg-ref.html @@ -0,0 +1,11 @@ + + +Popover is only effective on HTMLElement, not on svg element + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-and-svg.html b/testing/web-platform/tests/html/semantics/popovers/popover-and-svg.html new file mode 100644 index 0000000000..c5e8bb42a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-and-svg.html @@ -0,0 +1,18 @@ + + +Popover is only effective on HTMLElement, not on svg element + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-appearance-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-appearance-ref.html new file mode 100644 index 0000000000..7ceca94559 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-appearance-ref.html @@ -0,0 +1,18 @@ + + +Popover element appearance + + + + +

                                                                                                                                                        There should be four popovers with similar appearance.

                                                                                                                                                        +
                                                                                                                                                        Blank
                                                                                                                                                        +
                                                                                                                                                        Auto
                                                                                                                                                        +
                                                                                                                                                        Manual
                                                                                                                                                        +
                                                                                                                                                        Invalid
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-appearance.html b/testing/web-platform/tests/html/semantics/popovers/popover-appearance.html new file mode 100644 index 0000000000..e9050bdeb9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-appearance.html @@ -0,0 +1,26 @@ + + +Popover element appearance + + + + + + + +

                                                                                                                                                        There should be four popovers with similar appearance.

                                                                                                                                                        +
                                                                                                                                                        Blank +
                                                                                                                                                        Auto
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Manual
                                                                                                                                                        + +
                                                                                                                                                        Invalid
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-attribute-all-elements.html b/testing/web-platform/tests/html/semantics/popovers/popover-attribute-all-elements.html new file mode 100644 index 0000000000..5a536f026e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-attribute-all-elements.html @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-attribute-basic.html b/testing/web-platform/tests/html/semantics/popovers/popover-attribute-basic.html new file mode 100644 index 0000000000..2af3bbc137 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-attribute-basic.html @@ -0,0 +1,359 @@ + + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Different element type
                                                                                                                                                        +
                                                                                                                                                        Different element type
                                                                                                                                                        + + + Dialog with popover attribute + Dialog with popover=manual +
                                                                                                                                                        Invalid popover value - defaults to popover=manual
                                                                                                                                                        +
                                                                                                                                                        Invalid popover value - defaults to popover=manual
                                                                                                                                                        +
                                                                                                                                                        Invalid popover value - defaults to popover=manual
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        Not a popover
                                                                                                                                                        + Dialog without popover attribute +
                                                                                                                                                        + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance-ref.html new file mode 100644 index 0000000000..bf2b16c3f5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance-ref.html @@ -0,0 +1,45 @@ + + +Popover ::backdrop pseudo element appearance + + + +

                                                                                                                                                        Test for [popover]::backdrop presence and stacking order. The test passes + if there are 3 stacked boxes, with the brightest green on top.

                                                                                                                                                        +
                                                                                                                                                        Bottom +
                                                                                                                                                        Middle +
                                                                                                                                                        Top
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Bottom
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Middle
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Top
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance.html b/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance.html new file mode 100644 index 0000000000..cf57aee69e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-backdrop-appearance.html @@ -0,0 +1,47 @@ + + +Popover ::backdrop pseudo element appearance + + + + + + +

                                                                                                                                                        Test for [popover]::backdrop presence and stacking order. The test passes + if there are 3 stacked boxes, with the brightest green on top.

                                                                                                                                                        +
                                                                                                                                                        Bottom +
                                                                                                                                                        Middle +
                                                                                                                                                        Top
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-beforetoggle-opening-event.html b/testing/web-platform/tests/html/semantics/popovers/popover-beforetoggle-opening-event.html new file mode 100644 index 0000000000..41bb9aa82c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-beforetoggle-opening-event.html @@ -0,0 +1,33 @@ + + +Popover beforetoggle event + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-change-type.html b/testing/web-platform/tests/html/semantics/popovers/popover-change-type.html new file mode 100644 index 0000000000..978d1d1495 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-change-type.html @@ -0,0 +1,42 @@ + + + + + + + + + + +
                                                                                                                                                        popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-close-request.html b/testing/web-platform/tests/html/semantics/popovers/popover-close-request.html new file mode 100644 index 0000000000..830a40e060 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-close-request.html @@ -0,0 +1,40 @@ + + +Popover close request behavior + + + + + + + + +
                                                                                                                                                        + Inside popover 1 +
                                                                                                                                                        Inside popover 2
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-css-properties.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-css-properties.tentative.html new file mode 100644 index 0000000000..93d388b02b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-css-properties.tentative.html @@ -0,0 +1,54 @@ + + +Popover API CSS parsing with computed values + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance-ref.html new file mode 100644 index 0000000000..12efbb6b1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance-ref.html @@ -0,0 +1,33 @@ + + +Dialog-Popover appearance + + +

                                                                                                                                                        Both dialogs should have the same shades of background.

                                                                                                                                                        +

                                                                                                                                                        The popover should have a completely-transparent ::backdrop.

                                                                                                                                                        +This is a modal dialog +This is a dialog popover + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance.html b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance.html new file mode 100644 index 0000000000..8b4edadee9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-appearance.html @@ -0,0 +1,27 @@ + + +Dialog-Popover appearance + + + + + +

                                                                                                                                                        Both dialogs should have the same shades of background.

                                                                                                                                                        +

                                                                                                                                                        The popover should have a completely-transparent ::backdrop.

                                                                                                                                                        +This is a modal dialog +This is a dialog popover + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-dialog-crash.html b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-crash.html new file mode 100644 index 0000000000..e7579d5a38 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-dialog-crash.html @@ -0,0 +1,26 @@ + + + +Dialog-Popover crash + + + + + + + + +

                                                                                                                                                        This test passes if it does not crash.

                                                                                                                                                        +This is a modal dialog +
                                                                                                                                                        This is a popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-document-open.html b/testing/web-platform/tests/html/semantics/popovers/popover-document-open.html new file mode 100644 index 0000000000..80ac86aced --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-document-open.html @@ -0,0 +1,30 @@ + + + + + + + + +
                                                                                                                                                        Popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-events.html b/testing/web-platform/tests/html/semantics/popovers/popover-events.html new file mode 100644 index 0000000000..4d58001f7d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-events.html @@ -0,0 +1,216 @@ + + +Popover events + + + + + + + +
                                                                                                                                                        Popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html b/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html new file mode 100644 index 0000000000..892e5fd68f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-focus-2.html @@ -0,0 +1,174 @@ + + +Popover focus behaviors + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + Non-focusable popover +
                                                                                                                                                        + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        Popover with
                                                                                                                                                        + Other focusable element +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-focus-harness.html b/testing/web-platform/tests/html/semantics/popovers/popover-focus-harness.html new file mode 100644 index 0000000000..a22a68ea2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-focus-harness.html @@ -0,0 +1,25 @@ + + +Popover utils - harness test + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-focus.html b/testing/web-platform/tests/html/semantics/popovers/popover-focus.html new file mode 100644 index 0000000000..230492022c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-focus.html @@ -0,0 +1,292 @@ + + +Popover focus behaviors + + + + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover with autofocus on a tabindex=0 element

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover

                                                                                                                                                        + + +
                                                                                                                                                        + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display-ref.html new file mode 100644 index 0000000000..2dc0d558b6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display-ref.html @@ -0,0 +1,19 @@ + + + + + + +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display.html b/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display.html new file mode 100644 index 0000000000..db61802db6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hidden-display.html @@ -0,0 +1,39 @@ + + + + + + + + +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        +
                                                                                                                                                        This content should be visible and green
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hint-crash.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hint-crash.tentative.html new file mode 100644 index 0000000000..82f83538e9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hint-crash.tentative.html @@ -0,0 +1,29 @@ + + + +Popover=hint crash test + + + + + + + + +

                                                                                                                                                        This test passes if it does not crash.

                                                                                                                                                        + +
                                                                                                                                                        Popover 1 +
                                                                                                                                                        Popover 2
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Popover 3
                                                                                                                                                        +
                                                                                                                                                        Popover 4 - Click me
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hide.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hide.tentative.html new file mode 100644 index 0000000000..57ca5723de --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hide.tentative.html @@ -0,0 +1,21 @@ + + +The popover-hide-delay CSS property + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hover.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hover.tentative.html new file mode 100644 index 0000000000..d0036c0fe7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-hover.tentative.html @@ -0,0 +1,21 @@ + + +The popover-hide-delay CSS property + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-show.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-show.tentative.html new file mode 100644 index 0000000000..7b3fa2b302 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-show.tentative.html @@ -0,0 +1,21 @@ + + +The popover-hide-delay CSS property + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-toggle.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-toggle.tentative.html new file mode 100644 index 0000000000..d6d4079e7e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-hover-hide-toggle.tentative.html @@ -0,0 +1,21 @@ + + +The popover-hide-delay CSS property + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none-ref.html new file mode 100644 index 0000000000..3d58e4ca09 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none-ref.html @@ -0,0 +1,5 @@ + + + + +No popover should be displayed here.

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none.html b/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none.html new file mode 100644 index 0000000000..24ce7c6fc6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-inside-display-none.html @@ -0,0 +1,19 @@ + + + + + + + +No popover should be displayed here.

                                                                                                                                                        + +

                                                                                                                                                        +
                                                                                                                                                        This content should be hidden
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-invoker-reset.html b/testing/web-platform/tests/html/semantics/popovers/popover-invoker-reset.html new file mode 100644 index 0000000000..bfc79fd629 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-invoker-reset.html @@ -0,0 +1,34 @@ + + + + + + + + + + + + +
                                                                                                                                                        Popover 1 + +
                                                                                                                                                        +
                                                                                                                                                        Popover 2
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute-hint.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute-hint.tentative.html new file mode 100644 index 0000000000..b531ddc460 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute-hint.tentative.html @@ -0,0 +1,19 @@ + + +Popover invoking attribute + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute.html b/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute.html new file mode 100644 index 0000000000..8e312e90d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-invoking-attribute.html @@ -0,0 +1,74 @@ + + +Popover invoking attribute + + + + + + + + + + + + + + + + +
                                                                                                                                                        This is popover #1
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree-nested.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree-nested.html new file mode 100644 index 0000000000..ef3b35aea4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree-nested.html @@ -0,0 +1,55 @@ + + + + + Test that popover light dismiss uses the flat tree when nested shadow roots. + + + +

                                                                                                                                                        Test passes if the inner popover opens after clicking the inner toggle.

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree.html new file mode 100644 index 0000000000..65008e28ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-flat-tree.html @@ -0,0 +1,46 @@ + + + + + Test that popover light dismiss uses the flat tree. + + + +

                                                                                                                                                        Test passes if the inner popover opens after clicking the inner toggle.

                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-hint.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-hint.tentative.html new file mode 100644 index 0000000000..f07363115f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-hint.tentative.html @@ -0,0 +1,107 @@ + + +Popover light dismiss behavior for hints + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        auto 1 +
                                                                                                                                                        auto 2 +
                                                                                                                                                        inner hint 1 +
                                                                                                                                                        inner hint 2 +
                                                                                                                                                        Improperly nested auto 1
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        hint 1 +
                                                                                                                                                        hint 2 +
                                                                                                                                                        Improperly nested auto 2
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Manual
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-on-scroll.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-on-scroll.html new file mode 100644 index 0000000000..382addadef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-on-scroll.html @@ -0,0 +1,66 @@ + + + +Popover should *not* light dismiss on scroll + + + + + + + +
                                                                                                                                                        + Scroll me

                                                                                                                                                        + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt + ut labore et dolore magna aliqua. Enim ut sem viverra aliquet eget sit amet tellus. Massa + sed elementum tempus egestas sed sed risus pretium. Felis bibendum ut tristique et egestas + quis. Tortor dignissim convallis aenean et. Eu mi bibendum neque egestas congue quisque +
                                                                                                                                                        + +
                                                                                                                                                        + This is popover 1 +
                                                                                                                                                        + This is popover 2 +
                                                                                                                                                        +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-with-anchor.tentative.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-with-anchor.tentative.tentative.html new file mode 100644 index 0000000000..c4e545c4fb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss-with-anchor.tentative.tentative.html @@ -0,0 +1,90 @@ + + +Popover light dismiss with anchor behavior + + + + + + + + + + + +
                                                                                                                                                        + Inside popover 1 + +
                                                                                                                                                        +
                                                                                                                                                        + Inside popover 2 +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html new file mode 100644 index 0000000000..916d52ef5e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-light-dismiss.html @@ -0,0 +1,607 @@ + + +Popover light dismiss behavior + + + + + + + + + + + + +Outside all popovers +
                                                                                                                                                        + Inside popover 1 + + Inside popover 1 after button +
                                                                                                                                                        + Inside popover 2 +
                                                                                                                                                        +
                                                                                                                                                        + + + + + +
                                                                                                                                                        Inside popover 3
                                                                                                                                                        +
                                                                                                                                                        Inside popover 5 + +
                                                                                                                                                        + + + +
                                                                                                                                                        Inside popover 6 +
                                                                                                                                                        + Bottom of popover6 +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        + + Inside popover 8 after button +
                                                                                                                                                        + + + + +
                                                                                                                                                        Popover 1 + +
                                                                                                                                                        Popover 2 + + +
                                                                                                                                                        +
                                                                                                                                                        Popover 3 + +
                                                                                                                                                        +

                                                                                                                                                        Popover 4

                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        Popover 1 +
                                                                                                                                                        Popover 2 +
                                                                                                                                                        Popover 3
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        Popover 16 +
                                                                                                                                                        Popover 17
                                                                                                                                                        +
                                                                                                                                                        Popover 18
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        Popover 19
                                                                                                                                                        +
                                                                                                                                                        Popover 20
                                                                                                                                                        + + + + +
                                                                                                                                                        21 +
                                                                                                                                                        22
                                                                                                                                                        +
                                                                                                                                                        23
                                                                                                                                                        +
                                                                                                                                                        24
                                                                                                                                                        +
                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        26
                                                                                                                                                        +
                                                                                                                                                        27
                                                                                                                                                        +
                                                                                                                                                        28
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        Popover 29
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-manual-crash.html b/testing/web-platform/tests/html/semantics/popovers/popover-manual-crash.html new file mode 100644 index 0000000000..535eb4c7d1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-manual-crash.html @@ -0,0 +1,32 @@ + + + +Popover=manual crash test + + + + + + + + + + +

                                                                                                                                                        This test passes if it does not crash.

                                                                                                                                                        +
                                                                                                                                                        Auto1 +
                                                                                                                                                        Auto2
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Manual
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-move-documents.html b/testing/web-platform/tests/html/semantics/popovers/popover-move-documents.html new file mode 100644 index 0000000000..11f52c2f2f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-move-documents.html @@ -0,0 +1,89 @@ + + + + + + + + + +
                                                                                                                                                        p1
                                                                                                                                                        + + + +
                                                                                                                                                        p2
                                                                                                                                                        + + + +
                                                                                                                                                        + p3 +
                                                                                                                                                        p4
                                                                                                                                                        +
                                                                                                                                                        p5
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-not-keyboard-focusable.html b/testing/web-platform/tests/html/semantics/popovers/popover-not-keyboard-focusable.html new file mode 100644 index 0000000000..55c70aa643 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-not-keyboard-focusable.html @@ -0,0 +1,49 @@ + + +Popover keyboard focus behaviors + + + + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        This is a popover without a focusable element

                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-display-ref.html new file mode 100644 index 0000000000..144b81e645 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-display-ref.html @@ -0,0 +1,20 @@ + + + + + +
                                                                                                                                                        +
                                                                                                                                                        This is a popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-display.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-display.html new file mode 100644 index 0000000000..bc4d16fe80 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-display.html @@ -0,0 +1,27 @@ + + + + + + + +
                                                                                                                                                        This is a popover
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-in-beforetoggle.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-in-beforetoggle.html new file mode 100644 index 0000000000..1e22b73c68 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-in-beforetoggle.html @@ -0,0 +1,66 @@ + + +Popover beforetoggle event opening new popovers + + + + + + + + + +
                                                                                                                                                        Popover 1 +
                                                                                                                                                        Popover 2 +
                                                                                                                                                        Popover 3
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Outside
                                                                                                                                                        +Dialog + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-2.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-2.html new file mode 100644 index 0000000000..f2388b7642 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-2.html @@ -0,0 +1,69 @@ + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Absolute popover inside absolute element
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        Absolute element inside absolute popover
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        Fixed popover inside fixed element
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        Fixed element inside fixed popover
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        Absolute popover inside fixed element
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        Fixed element inside absolute popover
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-ref.html new file mode 100644 index 0000000000..0d14050e85 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display-ref.html @@ -0,0 +1,22 @@ + + + + +
                                                                                                                                                        This is popover 1
                                                                                                                                                        +
                                                                                                                                                        This is popover 2
                                                                                                                                                        +
                                                                                                                                                        This is popover 3
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display.tentative.html new file mode 100644 index 0000000000..3d4d833063 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-open-overflow-display.tentative.html @@ -0,0 +1,37 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        This is popover 1
                                                                                                                                                        +
                                                                                                                                                        This is popover 2
                                                                                                                                                        +
                                                                                                                                                        This is popover 3
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-overlay.html b/testing/web-platform/tests/html/semantics/popovers/popover-overlay.html new file mode 100644 index 0000000000..a607844aee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-overlay.html @@ -0,0 +1,51 @@ + +popover: overlay + + + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-removal-2.html b/testing/web-platform/tests/html/semantics/popovers/popover-removal-2.html new file mode 100644 index 0000000000..b21c0bb557 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-removal-2.html @@ -0,0 +1,29 @@ + + +Popover document removal behavior + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-removal.html b/testing/web-platform/tests/html/semantics/popovers/popover-removal.html new file mode 100644 index 0000000000..d2b664b464 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-removal.html @@ -0,0 +1,28 @@ + + +Popover document removal behavior + + + + + + +
                                                                                                                                                        Popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-shadow-dom.html b/testing/web-platform/tests/html/semantics/popovers/popover-shadow-dom.html new file mode 100644 index 0000000000..62aa135b56 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-shadow-dom.html @@ -0,0 +1,202 @@ + + + + + + + + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        Popover 1

                                                                                                                                                        + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        Popover 2
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This should not get hidden when popover2 opens.

                                                                                                                                                        + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-shadowhost-focus.html b/testing/web-platform/tests/html/semantics/popovers/popover-shadowhost-focus.html new file mode 100644 index 0000000000..91ee547d4e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-shadowhost-focus.html @@ -0,0 +1,56 @@ + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-stacking-anchor-attribute.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-anchor-attribute.tentative.html new file mode 100644 index 0000000000..6895b8625a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-anchor-attribute.tentative.html @@ -0,0 +1,104 @@ + + + + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        anchor attribute relationship

                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        indirect anchor attribute relationship

                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + Anchor +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        + + + +

                                                                                                                                                        This is popover #1

                                                                                                                                                        + + +
                                                                                                                                                        +

                                                                                                                                                        This is popover #2

                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        This is popover #3

                                                                                                                                                        +

                                                                                                                                                        This is popover #4

                                                                                                                                                        + + +This is a dialog + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context-ref.html b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context-ref.html new file mode 100644 index 0000000000..4d4ca6973f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context-ref.html @@ -0,0 +1,29 @@ + + + + + +
                                                                                                                                                        + Inside popover +
                                                                                                                                                        z-index 2 +
                                                                                                                                                        z-index 3
                                                                                                                                                        +
                                                                                                                                                        z-index 1
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Outside
                                                                                                                                                        + Bottom of popover +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context.html b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context.html new file mode 100644 index 0000000000..ba4e85a897 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-stacking-context.html @@ -0,0 +1,35 @@ + + + + + + + +
                                                                                                                                                        + Inside popover +
                                                                                                                                                        z-index 2 +
                                                                                                                                                        z-index 3
                                                                                                                                                        +
                                                                                                                                                        z-index 1
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Outside
                                                                                                                                                        + Bottom of popover +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-stacking.html b/testing/web-platform/tests/html/semantics/popovers/popover-stacking.html new file mode 100644 index 0000000000..1c352d566e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-stacking.html @@ -0,0 +1,131 @@ + + + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        Direct DOM children

                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        Grandchildren

                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        popovertarget attribute relationship

                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        nested popovertarget attribute relationship

                                                                                                                                                        +

                                                                                                                                                        Ancestor popover

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        Child popover

                                                                                                                                                        +
                                                                                                                                                        + + + + +

                                                                                                                                                        This is popover #1

                                                                                                                                                        + +

                                                                                                                                                        This is popover #2

                                                                                                                                                        + +

                                                                                                                                                        This is popover #3

                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +This is a dialog + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-target-action-hover.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-target-action-hover.tentative.html new file mode 100644 index 0000000000..b03ec78ebf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-target-action-hover.tentative.html @@ -0,0 +1,180 @@ + + +The popovertargetaction=hover behavior + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-target-element-disabled.html b/testing/web-platform/tests/html/semantics/popovers/popover-target-element-disabled.html new file mode 100644 index 0000000000..d5c951768c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-target-element-disabled.html @@ -0,0 +1,159 @@ + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        +
                                                                                                                                                        form
                                                                                                                                                        + + +
                                                                                                                                                        + toggle popover +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        hello
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        other popover
                                                                                                                                                        + +
                                                                                                                                                        + Popover Dialog + Open Non-modal Popover Dialog +
                                                                                                                                                        Fullscreen Popover
                                                                                                                                                        + Fullscreen Popover Dialog + Fullscreen Open Non-modal Popover Dialog +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-interactions.html b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-interactions.html new file mode 100644 index 0000000000..6d050ed99b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-interactions.html @@ -0,0 +1,89 @@ + + +Interactions between top layer element types + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html new file mode 100644 index 0000000000..4520ab0577 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-anchor.tentative.html @@ -0,0 +1,45 @@ + + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Single popover=auto ancestor +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Single popover=manual ancestor +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested popover=auto ancestors +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested popover=auto ancestors, target is outer +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Top layer inside of nested element +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-hints.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-hints.tentative.html new file mode 100644 index 0000000000..4ec1f49bda --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting-hints.tentative.html @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Single popover=hint ancestor +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested auto/hint ancestors +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested auto/hint ancestors, target is auto +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Unrelated hint, target=hint +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Unrelated hint, target=auto +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting.tentative.html new file mode 100644 index 0000000000..a0b3b60b72 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-top-layer-nesting.tentative.html @@ -0,0 +1,45 @@ + + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Single popover=auto ancestor +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Single popover=manual ancestor +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested popover=auto ancestors +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Nested popover=auto ancestors, target is outer +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        Top layer inside of nested element +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-types-with-hints.tentative.html b/testing/web-platform/tests/html/semantics/popovers/popover-types-with-hints.tentative.html new file mode 100644 index 0000000000..07f0e26fce --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-types-with-hints.tentative.html @@ -0,0 +1,179 @@ + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Hint
                                                                                                                                                        +
                                                                                                                                                        Async
                                                                                                                                                        +
                                                                                                                                                        Async
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        popover 1 +
                                                                                                                                                        popover 2 +

                                                                                                                                                        Anchor

                                                                                                                                                        +
                                                                                                                                                        popover 3
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        Hint anchored to popover
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        Hint +
                                                                                                                                                        Nested hint
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        Hint +
                                                                                                                                                        Nested auto (note - never visible, since inside display:none subtree)
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        Auto +
                                                                                                                                                        Nested Auto
                                                                                                                                                        +
                                                                                                                                                        Nested hint
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        Auto
                                                                                                                                                        +
                                                                                                                                                        Non-Nested hint
                                                                                                                                                        + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-types.html b/testing/web-platform/tests/html/semantics/popovers/popover-types.html new file mode 100644 index 0000000000..d4ad81e52b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-types.html @@ -0,0 +1,37 @@ + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        Popover
                                                                                                                                                        +
                                                                                                                                                        Async
                                                                                                                                                        +
                                                                                                                                                        Async
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/popovers/popover-undefined-remove-crash.html b/testing/web-platform/tests/html/semantics/popovers/popover-undefined-remove-crash.html new file mode 100644 index 0000000000..3c273ea6f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popover-undefined-remove-crash.html @@ -0,0 +1,12 @@ + + + + +
                                                                                                                                                        +PO +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/popovertarget-reflection.html b/testing/web-platform/tests/html/semantics/popovers/popovertarget-reflection.html new file mode 100644 index 0000000000..d0750fdd4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/popovertarget-reflection.html @@ -0,0 +1,53 @@ + + + + + + + + + +
                                                                                                                                                        popover
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/popovers/resources/popover-hover-hide-common.js b/testing/web-platform/tests/html/semantics/popovers/resources/popover-hover-hide-common.js new file mode 100644 index 0000000000..9f407ef157 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/resources/popover-hover-hide-common.js @@ -0,0 +1,139 @@ +// NOTE about testing methodology: +// This test checks whether popovers are hidden *after* the appropriate de-hover +// delay. The delay used for testing is kept low, to avoid this test taking too +// long, but that means that sometimes on a slow bot/client, the delay can +// elapse before we are able to check the popover status. And that can make this +// test flaky. To avoid that, the msSinceMouseOver() function is used to check +// that not-too-much time has passed, and if it has, the test is simply skipped. + +const hoverDelays = 100; // This needs to match the style block below. +const hoverWaitTime = 200; // How long to wait to cover the delay for sure. + +async function initialPopoverShow(invoker) { + const popover = invoker.popoverTargetElement; + assert_false(popover.matches(':popover-open')); + await mouseOver(invoker); // Always start with the mouse over the invoker + popover.showPopover(); + assert_true(popover.matches(':popover-open')); +} + +function runHoverHideTest(popoverType, invokerType, invokerAction) { + const descr = `popover=${popoverType}, invoker=${invokerType}, popovertargetaction=${invokerAction}`; + promise_test(async (t) => { + const {popover,invoker} = makeTestParts(t, popoverType, invokerType, invokerAction); + await initialPopoverShow(invoker); + await mouseOver(unrelated); + let showing = popover.matches(':popover-open'); + if (msSinceMouseOver() >= hoverDelays) + return; // The WPT runner was too slow. + assert_true(showing,'popover shouldn\'t immediately hide'); + await mouseHover(unrelated,hoverWaitTime); + assert_false(popover.matches(':popover-open'),'popover should hide after delay'); + },`The popover-hide-delay causes a popover to be hidden after a delay, ${descr}`); + + promise_test(async (t) => { + const {popover,invoker} = makeTestParts(t, popoverType, invokerType, invokerAction); + await initialPopoverShow(invoker); + await mouseHover(popover,hoverWaitTime); + assert_true(popover.matches(':popover-open'),'hovering the popover should keep it showing'); + await mouseOver(unrelated); + let showing = popover.matches(':popover-open'); + if (msSinceMouseOver() >= hoverDelays) + return; // The WPT runner was too slow. + assert_true(showing,'subsequently hovering unrelated element shouldn\'t immediately hide the popover'); + await mouseHover(unrelated,hoverWaitTime); + assert_false(popover.matches(':popover-open'),'hovering unrelated element should hide popover after delay'); + },`hovering the popover keeps it from being hidden, ${descr}`); + + promise_test(async (t) => { + const {popover,invoker,mouseOverInvoker} = makeTestParts(t, popoverType, invokerType, invokerAction); + await initialPopoverShow(invoker); + assert_true(popover.matches(':popover-open')); + await mouseHover(popover,hoverWaitTime); + await mouseHover(mouseOverInvoker,hoverWaitTime); + assert_true(popover.matches(':popover-open'),'Moving hover between invoker and popover should keep popover from being hidden'); + await mouseHover(unrelated,hoverWaitTime); + assert_false(popover.matches(':popover-open'),'Moving hover to unrelated should finally hide the popover'); + },`hovering an invoking element keeps the popover from being hidden, ${descr}`); +} + +function runHoverHideTestsForInvokerAction(invokerAction) { + promise_test(async (t) => { + const {popover,invoker} = makeTestParts(t, 'auto', 'button', 'show'); + assert_false(popover.matches(':popover-open')); + assert_true(invoker.matches('[popovertarget]'),'invoker needs to match [popovertarget]'); + assert_equals(invoker.popoverTargetElement,popover,'invoker should point to popover'); + await mouseHover(invoker,hoverWaitTime); + assert_true(msSinceMouseOver() >= hoverWaitTime,'waitForHoverTime should wait the specified time'); + assert_true(hoverWaitTime > hoverDelays,'hoverDelays is the value from CSS, hoverWaitTime should be longer than that'); + assert_equals(getComputedStyleTimeMs(invoker,'popoverShowDelay'),hoverDelays,'popover-show-delay is incorrect'); + assert_equals(getComputedStyleTimeMs(popover,'popoverHideDelay'),hoverDelays,'popover-hide-delay is incorrect'); + },'Test the harness'); + + // Run for all invoker and popover types. + ["button","input"].forEach(invokerType => { + ["auto","hint","manual"].forEach(popoverType => { + runHoverHideTest(popoverType, invokerType, invokerAction); + }); + }); +} + +// Setup stuff +const unrelated = document.createElement('div'); +unrelated.id = 'unrelated'; +unrelated.textContent = 'Unrelated element'; +const style = document.createElement('style'); +document.body.append(unrelated,style); +style.textContent = ` + div, button, input { + /* Fixed position everything to ensure nothing overlaps */ + position: fixed; + max-height: 100px; + } + #unrelated {top: 100px;} + [popovertarget] { + top:200px; + popover-show-delay: 100ms; + } + [popover] { + width: 200px; + height: 100px; + top:300px; + popover-hide-delay: 100ms; + } +`; + +function makeTestParts(t,popoverType,invokerType,invokerAction) { + const popover = document.createElement('div'); + popover.id = `popover-${popoverType}-${invokerType}-${invokerAction}`; + document.body.appendChild(popover); + popover.popover = popoverType; + assert_equals(popover.popover, popoverType, `Type ${popoverType} not supported`); + const invoker = document.createElement(invokerType); + document.body.appendChild(invoker); + invoker.popoverTargetElement = popover; + invoker.popoverTargetAction = invokerAction; + assert_equals(invoker.popoverTargetAction, invokerAction, `Invoker action ${invokerAction} not supported`); + let mouseOverInvoker; + switch (invokerType) { + case 'button': + invoker.innerHTML = 'Click me'; + mouseOverInvoker = invoker.firstElementChild.firstElementChild; + assert_true(!!mouseOverInvoker); + break; + case 'input': + invoker.type = 'button'; + mouseOverInvoker = invoker; + break; + default: + assert_unreached('Invalid invokerType ' + invokerType); + break; + } + t.add_cleanup(() => {popover.remove(); invoker.remove();}); + return {popover, invoker, mouseOverInvoker}; +} + +function getComputedStyleTimeMs(element,property) { + // Times are in seconds, so just strip off the 's'. + return Number(getComputedStyle(element)[property].slice(0,-1))*1000; +} diff --git a/testing/web-platform/tests/html/semantics/popovers/resources/popover-invoking-attribute.js b/testing/web-platform/tests/html/semantics/popovers/resources/popover-invoking-attribute.js new file mode 100644 index 0000000000..d2911647e1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/popovers/resources/popover-invoking-attribute.js @@ -0,0 +1,122 @@ +const actionReflectionLogic = (action) => { + switch (action?.toLowerCase()) { + case "show": return "show"; + case "hide": return "hide"; + default: return "toggle"; + } +} +const noActivationLogic = (action) => { + return "none"; +} +function makeElementWithType(element,type) { + return (test) => { + const el = Object.assign(document.createElement(element),{type}); + document.body.appendChild(el); + test.add_cleanup(() => el.remove()); + return el; + }; +} +const supportedButtonTypes = ['button','reset','submit',''].map(type => { + return { + name: ` + + + +

                                                                                                                                                        The result will be pass/fail per the testharness.js results

                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-module-manual.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-module-manual.html new file mode 100644 index 0000000000..359b71d821 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/no-active-script-module-manual.html @@ -0,0 +1,55 @@ + + +Dynamic import when there is no active script + + + + +

                                                                                                                                                        Click these buttons in sequence:

                                                                                                                                                        + + + + + +

                                                                                                                                                        The result will be pass/fail per the testharness.js results

                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic.html new file mode 100644 index 0000000000..0958cfbeba --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module.html new file mode 100644 index 0000000000..47c422e59c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module.html @@ -0,0 +1,5 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external.js new file mode 100644 index 0000000000..3b97d2f40e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external.js @@ -0,0 +1,7 @@ +// This file is loaded both as a module and as a classic script. +promise_test(t => { + return import("../imports-a.js").then(module => { + assert_true(window.evaluated_imports_a); + assert_equals(module.A["from"], "imports-a.js"); + }); +}, "Dynamically imported module should eval when imported from script w/ a valid nonce."); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic.html new file mode 100644 index 0000000000..754110cb5e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module.html new file mode 100644 index 0000000000..f3322773a4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/blob-url-worker.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/blob-url-worker.js new file mode 100644 index 0000000000..07071e05ce --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/blob-url-worker.js @@ -0,0 +1,11 @@ +self.addEventListener("message", (evt) => { + const importModule = import(evt.data); + importModule.then( + (module) => { + self.postMessage({ importSucceeded: true, module: { ...module } }); + }, + (error) => { + self.postMessage({ importSucceeded: false, errorName: error.name }); + } + ); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce-iframe.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce-iframe.sub.html new file mode 100644 index 0000000000..56f915aac1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce-iframe.sub.html @@ -0,0 +1,4 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce.js new file mode 100644 index 0000000000..e9983fb6cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/code-cache-nonce.js @@ -0,0 +1,4 @@ +// Note that the function source text is intentionally different from e.g. +// ../alpha/code-cache.js to avoid caching Functions between different sets +// of tests. +parent.promise = (new Function('x', 'return import(x)'))('../../imports-a.js'); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/empty-iframe.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/empty-iframe.html new file mode 100644 index 0000000000..ad5ab30eda --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/empty-iframe.html @@ -0,0 +1,9 @@ + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/status-changing-script.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/status-changing-script.py new file mode 100644 index 0000000000..a44d3dd3eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/status-changing-script.py @@ -0,0 +1,18 @@ +def main(request, response): + headers = [(b"Content-Type", b"text/javascript"), + (b"Cache-Control", b"private, no-store")] + + id = request.GET.first(b"id") + + with request.server.stash.lock: + status = request.server.stash.take(id) + if status is None: + status = 200 + + new_status = request.GET.first(b"newStatus", None) + if new_status is not None: + status = int(new_status) + + request.server.stash.put(id, status) + + return status, headers, b"" diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache-iframe.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache-iframe.sub.html new file mode 100644 index 0000000000..c3a870b3f1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache-iframe.sub.html @@ -0,0 +1,9 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache.js new file mode 100644 index 0000000000..1d3e88a51d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/resources/v8-code-cache.js @@ -0,0 +1,74 @@ +parent.promise = import('../../imports-a.js'); + +// Padding for triggering V8 Code Cache on Chromium. +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ +// ============================================================================ diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/Function.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/Function.js new file mode 100644 index 0000000000..447e5060b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/Function.js @@ -0,0 +1,2 @@ +// import()s in a dynamically created function are resolved relative to the script. +Function(`import('../../imports-a.js?label=' + window.label).then(window.continueTest, window.errorTest)`)(); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/eval.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/eval.js new file mode 100644 index 0000000000..100602733a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/eval.js @@ -0,0 +1,2 @@ +// import()s in eval are resolved relative to the script. +eval(`import('../../imports-a.js?label=' + window.label).then(window.continueTest, window.errorTest)`); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/inline-event-handlers-UA-code.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/inline-event-handlers-UA-code.js new file mode 100644 index 0000000000..3202ce47b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/inline-event-handlers-UA-code.js @@ -0,0 +1,3 @@ +// import()s in an event handler are resolved relative to the document base. +window.dummyDiv.setAttribute("onclick", `import('./imports-a.js?label=' + window.label).then(window.continueTest, window.errorTest)`); +window.dummyDiv.click(); // different from **on**click() diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/no-active-script.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/no-active-script.js new file mode 100644 index 0000000000..85d8ac29ec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/no-active-script.js @@ -0,0 +1,5 @@ +"use strict"; + +document.querySelector("#button1").setAttribute("onclick", "import('../imports-a.js?label=button1').then(window.continueTest1, window.errorTest1)"); + +document.querySelector("#button2").setAttribute("onclick", "Promise.resolve(`import('../imports-a.js?label=button2')`).then(eval).then(window.continueTest2, window.errorTest2);"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/reflected-inline-event-handlers.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/reflected-inline-event-handlers.js new file mode 100644 index 0000000000..923eb7d8b6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/reflected-inline-event-handlers.js @@ -0,0 +1,3 @@ +// import()s in an event handler are resolved relative to the document base. +window.dummyDiv.setAttribute("onclick", `import('./imports-a.js?label=' + window.label).then(window.continueTest, window.errorTest)`); +window.dummyDiv.onclick(); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/setTimeout.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/setTimeout.js new file mode 100644 index 0000000000..342b342e8e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/scripts/setTimeout.js @@ -0,0 +1,2 @@ +// import()s in a timeout handler are resolved relative to the script. +setTimeout(`import('../../imports-a.js?label=' + window.label).then(window.continueTest, window.errorTest)`, 0); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-classic.html new file mode 100644 index 0000000000..855705e585 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-classic.html @@ -0,0 +1,63 @@ + + +import() inside compiled strings uses the script base URL inside a classic script that is loaded from a file + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-module.html new file mode 100644 index 0000000000..d90af9c96a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-external-module.html @@ -0,0 +1,64 @@ + + +import() inside compiled strings uses the script base URL inside a module script that is loaded from a file + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-classic.html new file mode 100644 index 0000000000..2fe1f75535 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-classic.html @@ -0,0 +1,73 @@ + + +import() inside compiled strings uses the script base URL (= document base URL) inside an inline classic script + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-module.html new file mode 100644 index 0000000000..1691550ecb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-inline-module.html @@ -0,0 +1,73 @@ + + +import() inside compiled strings uses the script base URL (= document base URL) inside an inline module script + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic.html new file mode 100644 index 0000000000..34ea00abc8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic.html @@ -0,0 +1,54 @@ + + +import() inside compiled strings inside a classic script + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module.html new file mode 100644 index 0000000000..b85d446d8d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module.html @@ -0,0 +1,54 @@ + + +import() inside compiled strings inside a module script + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-classic.html new file mode 100644 index 0000000000..b582eba8b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-classic.html @@ -0,0 +1,104 @@ + + +import() inside compiled strings uses the appropriate nonce inside a classic script + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-module.html new file mode 100644 index 0000000000..4fa1cc5877 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-module.html @@ -0,0 +1,103 @@ + + +import() inside compiled strings uses the appropriate nonce inside a module script + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-of-promise-result.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-of-promise-result.html new file mode 100644 index 0000000000..5514049c78 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-of-promise-result.html @@ -0,0 +1,83 @@ + + +import() inside compiled strings inside a classic script + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-other-document.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-other-document.html new file mode 100644 index 0000000000..3b1d98f6b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-other-document.html @@ -0,0 +1,79 @@ + + +Check import() works when active script is in another document + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/v8-code-cache.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/v8-code-cache.html new file mode 100644 index 0000000000..77de19e74b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/v8-code-cache.html @@ -0,0 +1,42 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency.html new file mode 100644 index 0000000000..f336276f3f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency.html @@ -0,0 +1,20 @@ + +Module importing syntax error script and slow script should not crash UA + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.html new file mode 100644 index 0000000000..2480a60d6d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.html @@ -0,0 +1,34 @@ + +Handling of different types of errors + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.js new file mode 100644 index 0000000000..4882d3f2a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-1.js @@ -0,0 +1,2 @@ +import './syntaxerror.js'; +import './404.js'; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.html new file mode 100644 index 0000000000..673bf28ca2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.html @@ -0,0 +1,35 @@ + +Handling of different types of errors + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.js new file mode 100644 index 0000000000..6b11397300 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-2.js @@ -0,0 +1,2 @@ +import './instantiation-error-1.js'; +import './syntaxerror.js'; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.html new file mode 100644 index 0000000000..8a16266f4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.html @@ -0,0 +1,35 @@ + +Handling of different types of errors + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.js new file mode 100644 index 0000000000..542be52846 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/error-type-3.js @@ -0,0 +1,2 @@ +import './throw.js'; +import './instantiation-error-1.js'; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-common.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-common.js new file mode 100644 index 0000000000..4eb5597a58 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-common.js @@ -0,0 +1,10 @@ +function errorHandler(ev) +{ + document._errorReported.push("error"); +} + +document._errorReported = []; +window.addEventListener("error", errorHandler); +window.addEventListener("load", function () { + document._errorReported = document._errorReported.join(","); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.html new file mode 100644 index 0000000000..3a00f62f00 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.html @@ -0,0 +1,16 @@ + + + + html-script-module-errorHandling-parseError-Dependent + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.js new file mode 100644 index 0000000000..71872c47cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.js @@ -0,0 +1,2 @@ +// Parse error in a dependent module +1A diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.html new file mode 100644 index 0000000000..7775aeabb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.html @@ -0,0 +1,24 @@ + + + + html-script-module-errorHandling-parseError-DependentMultiple + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.js new file mode 100644 index 0000000000..71872c47cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.js @@ -0,0 +1,2 @@ +// Parse error in a dependent module +1A diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-root.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-root.html new file mode 100644 index 0000000000..012f3e9b8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-root.html @@ -0,0 +1,15 @@ + + + + html-script-module-errorHandling-parseError-Root + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype-import.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype-import.js new file mode 100644 index 0000000000..286e1a4229 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype-import.js @@ -0,0 +1,8 @@ +import foo from "./errorhandling-wrongMimetype.js?pipe=header(Content-Type,text/plain)"; + +// We don't expect this code to run, the import above should fail! +// If we do run though, don't trigger an error that the testharness +// might misinterpret as the import itself failing to load. + +var A = null; +export { A }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype.js new file mode 100644 index 0000000000..373a532445 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype.js @@ -0,0 +1,7 @@ +// This is a plain JavaScript file, but since it will only be accessed with +// a Content-Type of text/plain and nosniff, it will be seen as invalid. +// The file itself will have no errors/effects, so if it does actually run, +// no error will be detected, and the test will fail. + +var foo = null; +export foo; \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html new file mode 100644 index 0000000000..cf47465b49 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html @@ -0,0 +1,60 @@ + + + + html-script-module-errorHandling + + + + + +

                                                                                                                                                        html-script-module-errorHandling

                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1.html new file mode 100644 index 0000000000..3f2bb35f4e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1.html @@ -0,0 +1,35 @@ + +Handling of evaluation errors, 1 + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html new file mode 100644 index 0000000000..4f2b3c5a74 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html @@ -0,0 +1,34 @@ + +Handling of evaluation errors, 2 + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3.html new file mode 100644 index 0000000000..9bfb5df2cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3.html @@ -0,0 +1,37 @@ + +Handling of evaluation errors, 3 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4.html new file mode 100644 index 0000000000..0b4b7d1662 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4.html @@ -0,0 +1,37 @@ + +Handling of evaluation errors, 4 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered2.js new file mode 100644 index 0000000000..d7115a2ac6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered2.js @@ -0,0 +1,3 @@ +test_dynamicOrdered.step(function() { + assert_execCount(1, 2, "External script element (#1) should have fired second"); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered3.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered3.js new file mode 100644 index 0000000000..c04e101bb8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered3.js @@ -0,0 +1,3 @@ +test_dynamicOrdered.step(function() { + assert_execCount(1, 3, "External script element (#2) should have fired third"); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered4.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered4.js new file mode 100644 index 0000000000..958736a3d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered4.js @@ -0,0 +1,3 @@ +test_dynamicOrdered.step(function() { + assert_execCount(1, 4, "External script element (#3) should have fired fourth"); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered1.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered1.js new file mode 100644 index 0000000000..a54cb7a303 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered1.js @@ -0,0 +1,3 @@ +test_dynamicUnordered1.step(function() { + test_dynamicUnordered1.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered2.js new file mode 100644 index 0000000000..df0cd85421 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered2.js @@ -0,0 +1,3 @@ +test_dynamicUnordered2.step(function() { + test_dynamicUnordered2.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered2.js new file mode 100644 index 0000000000..fca73bd9db --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered2.js @@ -0,0 +1,3 @@ +test_parsedOrdered.step(function() { + assert_execCount(0, 2, "External deferred (#1) script element should have fired second"); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered4.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered4.js new file mode 100644 index 0000000000..6435333bb9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered4.js @@ -0,0 +1,3 @@ +test_parsedOrdered.step(function() { + assert_execCount(0, 4, "External deferred (#2) script element should have fired fourth"); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered1.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered1.js new file mode 100644 index 0000000000..ea0bb1b486 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered1.js @@ -0,0 +1,3 @@ +test_parsedUnordered1.step(function() { + test_parsedUnordered1.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered2.js new file mode 100644 index 0000000000..ce219ee0ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered2.js @@ -0,0 +1,3 @@ +test_parsedUnordered2.step(function() { + test_parsedUnordered2.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder.html new file mode 100644 index 0000000000..6a7513dc13 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/execorder.html @@ -0,0 +1,106 @@ + + + + html-script-module-execOrder + + + + + + +

                                                                                                                                                        html-script-module-execOrder

                                                                                                                                                        + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-default.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-default.js new file mode 100644 index 0000000000..283830ab28 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-default.js @@ -0,0 +1,2 @@ +log.push("export-default"); +export default "fox"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something-nested.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something-nested.js new file mode 100644 index 0000000000..ca806eb8b1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something-nested.js @@ -0,0 +1,2 @@ +log.push("export-something-nested"); +export * from "./export-something.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something.js new file mode 100644 index 0000000000..cf2c3a99fe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/export-something.js @@ -0,0 +1,3 @@ +log.push("export-something"); +export let foo = 42; +export function set_foo(x) { foo = x }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1.html new file mode 100644 index 0000000000..170bb665ff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1.html @@ -0,0 +1,15 @@ + +Handling of fetch errors, 1 + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.html new file mode 100644 index 0000000000..9386ce603a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.html @@ -0,0 +1,15 @@ + +Handling of fetch errors, 2 + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.js new file mode 100644 index 0000000000..20c0ea6402 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.js @@ -0,0 +1,2 @@ +import "./no-such-file.js" +import "./this.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-dependent.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-dependent.js new file mode 100644 index 0000000000..cfaeabc47e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-dependent.js @@ -0,0 +1 @@ +export let importMetaOnDependentModule = import.meta; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-object.any.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-object.any.js new file mode 100644 index 0000000000..494e168102 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-object.any.js @@ -0,0 +1,20 @@ +// META: global=dedicatedworker-module,sharedworker-module,serviceworker-module + +test(() => { + assert_equals(typeof import.meta, "object"); + assert_not_equals(import.meta, null); +}, "import.meta is an object"); + +test(() => { + import.meta.newProperty = 1; + assert_true(Object.isExtensible(import.meta)); +}, "import.meta is extensible"); + +test(() => { + for (const name of Reflect.ownKeys(import.meta)) { + const desc = Object.getOwnPropertyDescriptor(import.meta, name); + assert_equals(desc.writable, true); + assert_equals(desc.enumerable, true); + assert_equals(desc.configurable, true); + } +}, "import.meta's properties are writable, configurable, and enumerable"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-importmap.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-importmap.html new file mode 100644 index 0000000000..214b9bb59c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-importmap.html @@ -0,0 +1,57 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-multiple-scripts.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-multiple-scripts.html new file mode 100644 index 0000000000..d2e0f185e0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve-multiple-scripts.html @@ -0,0 +1,39 @@ + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve.any.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve.any.js new file mode 100644 index 0000000000..5b8a84efaf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-resolve.any.js @@ -0,0 +1,77 @@ +// META: global=dedicatedworker-module,sharedworker-module,serviceworker-module + +import { importMetaOnRootModule, importMetaOnDependentModule } + from "./import-meta-root.js"; + +test(() => { + assert_equals(typeof import.meta.resolve, "function"); + assert_equals(import.meta.resolve.name, "resolve"); + assert_equals(import.meta.resolve.length, 1); + assert_equals(Object.getPrototypeOf(import.meta.resolve), Function.prototype); +}, "import.meta.resolve is a function with the right properties"); + +test(() => { + assert_false(isConstructor(import.meta.resolve)); + + assert_throws_js(TypeError, () => new import.meta.resolve("./x")); +}, "import.meta.resolve is not a constructor"); + +test(() => { + // See also tests in ./import-meta-resolve-importmap.html. + + assert_equals(import.meta.resolve({ toString() { return "./x"; } }), resolveURL("x")); + assert_throws_js(TypeError, () => import.meta.resolve(Symbol("./x")), + "symbol"); + assert_throws_js(TypeError, () => import.meta.resolve(), + "no argument (which is treated like \"undefined\")"); +}, "import.meta.resolve ToString()s its argument"); + +test(() => { + assert_equals(import.meta.resolve("./x"), resolveURL("x"), + "current module import.meta"); + assert_equals(importMetaOnRootModule.resolve("./x"), resolveURL("x"), + "sibling module import.meta"); + assert_equals(importMetaOnDependentModule.resolve("./x"), resolveURL("x"), + "dependency module import.meta"); +}, "Relative URL-like specifier resolution"); + +test(() => { + assert_equals(import.meta.resolve("https://example.com/"), "https://example.com/", + "current module import.meta"); + assert_equals(importMetaOnRootModule.resolve("https://example.com/"), "https://example.com/", + "sibling module import.meta"); + assert_equals(importMetaOnDependentModule.resolve("https://example.com/"), "https://example.com/", + "dependency module import.meta"); +}, "Absolute URL-like specifier resolution"); + +test(() => { + const invalidSpecifiers = [ + "https://eggplant:b/c", + "pumpkins.js", + ".tomato", + "..zuccini.mjs", + ".\\yam.es" + ]; + + for (const specifier of invalidSpecifiers) { + assert_throws_js(TypeError, () => import.meta.resolve(specifier), specifier); + } +}, "Invalid module specifiers"); + +test(() => { + const { resolve } = import.meta; + assert_equals(resolve("https://example.com/"), "https://example.com/", "current module import.meta"); +}, "Works fine with no this value"); + +function resolveURL(urlRelativeToThisTest) { + return (new URL(urlRelativeToThisTest, location.href)).href; +} + +function isConstructor(o) { + try { + new (new Proxy(o, { construct: () => ({}) })); + return true; + } catch { + return false; + } +} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js new file mode 100644 index 0000000000..62ec082a8e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js @@ -0,0 +1,2 @@ +export let importMetaOnRootModule = import.meta; +export { importMetaOnDependentModule } from "./import-meta-dependent.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.any.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.any.js new file mode 100644 index 0000000000..61d96f35af --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.any.js @@ -0,0 +1,38 @@ +// META: global=dedicatedworker-module,sharedworker-module,serviceworker-module + +import { importMetaOnRootModule, importMetaOnDependentModule } + from "./import-meta-root.js"; + +const base = location.href.slice(0, location.href.lastIndexOf('/')); + +test(() => { + assert_equals(importMetaOnRootModule.url, + base + "/import-meta-root.js"); +}, "import.meta.url in a root external script"); + +test(() => { + assert_equals(importMetaOnDependentModule.url, + base + "/import-meta-dependent.js"); +}, "import.meta.url in a dependent external script"); + + +import { importMetaOnRootModule as hashedImportMetaOnRootModule1, + importMetaOnDependentModule as hashedImportMetaOnDependentModule1 } + from "./import-meta-root.js#1"; + +import { importMetaOnRootModule as hashedImportMetaOnRootModule2, + importMetaOnDependentModule as hashedImportMetaOnDependentModule2 } + from "./import-meta-root.js#2"; + +test(() => { + assert_equals(hashedImportMetaOnRootModule1.url, + base + "/import-meta-root.js#1"); + assert_equals(hashedImportMetaOnRootModule2.url, + base + "/import-meta-root.js#2"); + + // Must not be affected + assert_equals(hashedImportMetaOnDependentModule1.url, + base + "/import-meta-dependent.js"); + assert_equals(hashedImportMetaOnDependentModule2.url, + base + "/import-meta-dependent.js"); +}, "import.meta.url when importing the module with different fragments"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.html new file mode 100644 index 0000000000..284a15f2b2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-url.html @@ -0,0 +1,34 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/postmessage-worker.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/postmessage-worker.js new file mode 100644 index 0000000000..3618137aef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/postmessage-worker.js @@ -0,0 +1,12 @@ +if ('DedicatedWorkerGlobalScope' in self && + self instanceof DedicatedWorkerGlobalScope) { + postMessage(import.meta.url); +} else if ( + 'SharedWorkerGlobalScope' in self && + self instanceof SharedWorkerGlobalScope) { + self.onconnect = function(e) { + const port = e.ports[0]; + port.start(); + port.postMessage(import.meta.url); + }; +} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-1.mjs b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-1.mjs new file mode 100644 index 0000000000..aef22247d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-1.mjs @@ -0,0 +1 @@ +export default 1; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-2.mjs b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-2.mjs new file mode 100644 index 0000000000..842e368a0a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-2.mjs @@ -0,0 +1 @@ +export default 2; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-import-meta.mjs b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-import-meta.mjs new file mode 100644 index 0000000000..488ca74c93 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/export-import-meta.mjs @@ -0,0 +1,2 @@ +export const url = import.meta.url; +export const resolve = import.meta.resolve; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/store-import-meta.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/store-import-meta.html new file mode 100644 index 0000000000..c9751da408 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-meta/resources/store-import-meta.html @@ -0,0 +1,5 @@ + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-something-namespace.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-something-namespace.js new file mode 100644 index 0000000000..32d90287d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-something-namespace.js @@ -0,0 +1,5 @@ +log.push("import-something-namespace"); +log.push(m.foo); +m.set_foo(43); +log.push(m.foo); +import * as m from "./export-something.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html new file mode 100644 index 0000000000..4911a071a0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html @@ -0,0 +1,14 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-a.js new file mode 100644 index 0000000000..44d1ac96c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-a.js @@ -0,0 +1,3 @@ +var A = { "from": "imports-a.js" }; +window.evaluated_imports_a = true; +export { A }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-b.js new file mode 100644 index 0000000000..ae194e4d8a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-b.js @@ -0,0 +1 @@ +export var B = { "from": "imports-b.js" }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-a.js new file mode 100644 index 0000000000..8bd8526f76 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-a.js @@ -0,0 +1,2 @@ +import { CycleB } from "./imports-cycle-b.js"; +export var CycleA = "CycleA"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-b.js new file mode 100644 index 0000000000..218f350c39 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-b.js @@ -0,0 +1,2 @@ +import { CycleA } from "./imports-cycle-a.js"; +export var CycleB = "CycleB"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle.js new file mode 100644 index 0000000000..88a77a4d67 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-cycle.js @@ -0,0 +1,6 @@ +import { CycleA } from "./imports-cycle-a.js"; + +test_importCycle.step(function () { + assert_equals(CycleA, "CycleA"); + test_importCycle.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-a.js new file mode 100644 index 0000000000..8cb2298e8a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-a.js @@ -0,0 +1,2 @@ +import { A } from "./imports-a.js"; +export { A as INC_A }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-ab.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-ab.js new file mode 100644 index 0000000000..b7d84005c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-ab.js @@ -0,0 +1,5 @@ +import { A } from "./imports-a.js"; +export { A as INC_AB_A }; + +import { B } from "./imports-b.js"; +export { B as INC_AB_B }; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-b.js new file mode 100644 index 0000000000..243b84fdd0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-inc-b.js @@ -0,0 +1,2 @@ +import { B } from "./imports-b.js"; +export { B as INC_B }; \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self-inner.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self-inner.js new file mode 100644 index 0000000000..40eca1c8df --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self-inner.js @@ -0,0 +1,2 @@ +import { SelfInner as SelfInnerA } from "./imports-self-inner.js"; +export var SelfInner = "SelfInner"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self.js new file mode 100644 index 0000000000..05fa60e2dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports-self.js @@ -0,0 +1,6 @@ +import { SelfInner } from "./imports-self-inner.js"; + +test_importSelf.step(function () { + assert_equals(SelfInner, "SelfInner"); + test_importSelf.done(); +}); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports.html new file mode 100644 index 0000000000..ca6900744d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/imports.html @@ -0,0 +1,64 @@ + + + + html-script-module-imports + + + + +

                                                                                                                                                        html-script-module-imports

                                                                                                                                                        + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inactive-context-import.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inactive-context-import.html new file mode 100644 index 0000000000..ce88c0a152 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inactive-context-import.html @@ -0,0 +1,20 @@ + + +Dynamic import triggered from inactive context should not crash + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder.html new file mode 100644 index 0000000000..db03612e82 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder.html @@ -0,0 +1,29 @@ + + + Inline async module script execution order + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-onload.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-onload.html new file mode 100644 index 0000000000..314abc98dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-async-onload.html @@ -0,0 +1,28 @@ + + + Inline async module script without external deps onload blocking + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-defer-onload.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-defer-onload.html new file mode 100644 index 0000000000..0a0bc36f8b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-defer-onload.html @@ -0,0 +1,29 @@ + + + Inline defer module script without external deps onload blocking + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-no-async-onload.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-no-async-onload.html new file mode 100644 index 0000000000..50f42c6a38 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/inline-no-async-onload.html @@ -0,0 +1,28 @@ + + + Inline module script without external deps onload blocking + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.html new file mode 100644 index 0000000000..57b40f5baa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.html @@ -0,0 +1,35 @@ + +Handling of instantiation errors, 1 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.js new file mode 100644 index 0000000000..e317b01cc2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.js @@ -0,0 +1 @@ +import something from "./instantiation-error-1.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2.html new file mode 100644 index 0000000000..27ba006fc7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2.html @@ -0,0 +1,35 @@ + +Handling of instantiation errors, 2 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3.html new file mode 100644 index 0000000000..32f0a4a243 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3.html @@ -0,0 +1,37 @@ + +Handling of instantiation errors, 3 + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html new file mode 100644 index 0000000000..8d3f23819a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html @@ -0,0 +1,32 @@ + +Handling of instantiation errors, 4 + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js new file mode 100644 index 0000000000..6fed27f1c7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js @@ -0,0 +1,2 @@ +import "./instantiation-error-4b.js"; +log.push("instantiation-error-4a"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js new file mode 100644 index 0000000000..4b702cae67 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js @@ -0,0 +1,3 @@ +import "./instantiation-error-4c.js"; +import "./instantiation-error-4d.js"; +log.push("instantiation-error-4b"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js new file mode 100644 index 0000000000..ef699f6ca3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js @@ -0,0 +1,2 @@ +import {something} from "./instantiation-error-4c.js"; +log.push("instantiation-error-4c"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js new file mode 100644 index 0000000000..ac04ccb9b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js @@ -0,0 +1,2 @@ +import {something} from "./instantiation-error-4d.js"; +log.push("instantiation-error-4d"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html new file mode 100644 index 0000000000..20df0bb5c9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html @@ -0,0 +1,32 @@ + +Handling of instantiation errors, 5 + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js new file mode 100644 index 0000000000..b2e6b106b2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js @@ -0,0 +1,2 @@ +import "./instantiation-error-5b.js"; +log.push("instantiation-error-5a"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js new file mode 100644 index 0000000000..2d37ae8fff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js @@ -0,0 +1,3 @@ +import "./instantiation-error-5c.js"; +import "./instantiation-error-5d.js"; +log.push("instantiation-error-5b"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js new file mode 100644 index 0000000000..ba221b6fc0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js @@ -0,0 +1,2 @@ +import {something} from "./instantiation-error-5c.js"; +log.push("instantiation-error-5c"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js new file mode 100644 index 0000000000..9775e04f82 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js @@ -0,0 +1,3 @@ +import "./instantiation-error-5e.js"; +import "./instantiation-error-5a.js"; +log.push("instantiation-error-5d"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js new file mode 100644 index 0000000000..8bd3b3c3bf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js @@ -0,0 +1,2 @@ +import {something} from "./instantiation-error-5e.js"; +log.push("instantiation-error-5e"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6.html new file mode 100644 index 0000000000..8d3ce121ee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6.html @@ -0,0 +1,36 @@ + +Handling of instantiation errors, 6 + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6a.js new file mode 100644 index 0000000000..4db49c6c46 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6a.js @@ -0,0 +1,2 @@ +import {foo} from "./instantiation-error-6b.js"; +log.push("instantiation-error-6a"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6b.js new file mode 100644 index 0000000000..35272fe550 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6b.js @@ -0,0 +1,3 @@ +export * from "./instantiation-error-6c.js"; +export * from "./instantiation-error-6d.js"; +log.push("instantiation-error-6b"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6c.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6c.js new file mode 100644 index 0000000000..69d616b4ba --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6c.js @@ -0,0 +1,2 @@ +export let foo = "c"; +log.push("instantiation-error-6c"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6d.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6d.js new file mode 100644 index 0000000000..d1336a57a2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6d.js @@ -0,0 +1,2 @@ +export let foo = "d"; +log.push("instantiation-error-6d"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7.html new file mode 100644 index 0000000000..57f1f87216 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7.html @@ -0,0 +1,37 @@ + +Handling of instantiation errors, 7 + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7a.js new file mode 100644 index 0000000000..d27a44865c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7a.js @@ -0,0 +1,2 @@ +import {foo} from "./instantiation-error-7b.js"; +log.push("instantiation-error-7a"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7b.js new file mode 100644 index 0000000000..8c05d3b727 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7b.js @@ -0,0 +1,3 @@ +export * from "./instantiation-error-7c.js"; +export * from "./instantiation-error-7f.js"; +log.push("instantiation-error-7b"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7c.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7c.js new file mode 100644 index 0000000000..fff1368034 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7c.js @@ -0,0 +1,3 @@ +export * from "./instantiation-error-7d.js"; +export * from "./instantiation-error-7e.js"; +log.push("instantiation-error-7c"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7d.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7d.js new file mode 100644 index 0000000000..fa5e7651f4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7d.js @@ -0,0 +1,2 @@ +export let foo = "d"; +log.push("instantiation-error-7d"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7e.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7e.js new file mode 100644 index 0000000000..6547c3fe6a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7e.js @@ -0,0 +1,2 @@ +export let foo = "e"; +log.push("instantiation-error-7e"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7f.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7f.js new file mode 100644 index 0000000000..7f9ec5d12e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7f.js @@ -0,0 +1,2 @@ +export let foo = "f"; +log.push("instantiation-error-7f"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html new file mode 100644 index 0000000000..080b170233 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html @@ -0,0 +1,27 @@ + +Handling of instantiation errors, 8 + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches-inner.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches-inner.js new file mode 100644 index 0000000000..369b3e7827 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches-inner.js @@ -0,0 +1 @@ +window.matchesLog.push("integrity-matches-inner"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches.js new file mode 100644 index 0000000000..d8c4219e90 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-matches.js @@ -0,0 +1,2 @@ +import "./integrity-matches-inner.js"; +window.matchesLog.push("integrity-matches"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches-inner.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches-inner.js new file mode 100644 index 0000000000..8182d4de16 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches-inner.js @@ -0,0 +1 @@ +window.mismatchesLog.push("integrity-mismatches-inner"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches.js new file mode 100644 index 0000000000..2d47344a5a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches.js @@ -0,0 +1,2 @@ +import "./integrity-mismatches-inner.js"; +window.mismatchesLog.push("integrity-mismatches"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity.html new file mode 100644 index 0000000000..c79843624f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/integrity.html @@ -0,0 +1,40 @@ + + +<script> integrity="" + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request.html new file mode 100644 index 0000000000..00269efdf9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request.html @@ -0,0 +1,20 @@ + +Late namespace request + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request.html new file mode 100644 index 0000000000..d40bb0aca7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request.html @@ -0,0 +1,25 @@ + +Late star-export request + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline.html new file mode 100644 index 0000000000..58397dd07d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline.html @@ -0,0 +1,61 @@ + + + +load/error events for inline module scripts + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events.html new file mode 100644 index 0000000000..d9bf05226c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/load-error-events.html @@ -0,0 +1,61 @@ + + + +load/error events for external module scripts + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export-nested.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export-nested.js new file mode 100644 index 0000000000..860d2bf341 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export-nested.js @@ -0,0 +1,2 @@ +import "./missing-export.js"; +log.push("nested-missing-export"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export.js new file mode 100644 index 0000000000..e6f5746eb7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/missing-export.js @@ -0,0 +1,2 @@ +import something from "./missing-export.js"; +log.push("missing-export"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.html new file mode 100644 index 0000000000..7348b88075 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.html @@ -0,0 +1,48 @@ + + + +Referrer for module imports + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.js new file mode 100644 index 0000000000..8710f5c621 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-import-referrer.js @@ -0,0 +1,2 @@ +export { referrer as referrerExternalStatic } from "./resources/referrer-checker.py?name=external-static" +export const { referrer: referrerExternalDynamic } = await import("./resources/referrer-checker.py?name=external-dynamic"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml.xhtml new file mode 100644 index 0000000000..1655e61a7c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml.xhtml @@ -0,0 +1,20 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1.html new file mode 100644 index 0000000000..ae82e1348a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1.html @@ -0,0 +1,17 @@ + +Once as module script, once as classic script + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2.html new file mode 100644 index 0000000000..fb512b4b30 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2.html @@ -0,0 +1,17 @@ + +Once as classic script, once as module script + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-a.js new file mode 100644 index 0000000000..a127aeb559 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-a.js @@ -0,0 +1 @@ +import { b } from "./nested-imports-b.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-b.js new file mode 100644 index 0000000000..18a5af40cc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-b.js @@ -0,0 +1,2 @@ +import { c } from "./nested-imports-c.js"; +export const b = "b"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-c.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-c.js new file mode 100644 index 0000000000..ec44596aea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-c.js @@ -0,0 +1,2 @@ +import { d } from "./nested-imports-d.js"; +export const c = "c"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-d.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-d.js new file mode 100644 index 0000000000..cee87849c6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-d.js @@ -0,0 +1,3 @@ +import { e } from "./nested-imports-e.js"; +import "./resources/delayed-modulescript.py"; +export const d = "d"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-e.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-e.js new file mode 100644 index 0000000000..ec6f0360a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-e.js @@ -0,0 +1,2 @@ +import { f } from "./nested-imports-f.js"; +export const e = "e"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-f.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-f.js new file mode 100644 index 0000000000..0591e0b316 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-f.js @@ -0,0 +1,2 @@ +import { g } from "./nested-imports-g.js"; +export const f = "f"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-g.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-g.js new file mode 100644 index 0000000000..86cbe7d3f8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-g.js @@ -0,0 +1,2 @@ +import { h } from "./nested-imports-h.js"; +export const g = "g"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-h.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-h.js new file mode 100644 index 0000000000..a161291259 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports-h.js @@ -0,0 +1,2 @@ +import { c } from "./nested-imports-c.js"; +export const h = "h"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports.html new file mode 100644 index 0000000000..23bb595d0e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-imports.html @@ -0,0 +1,29 @@ + +Test imports under more than 3 levels in different modules + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-missing-export.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-missing-export.js new file mode 100644 index 0000000000..3801ae847a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nested-missing-export.js @@ -0,0 +1,2 @@ +import "./missing-export.js"; +log.push("missing-export-nested"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute.html new file mode 100644 index 0000000000..656c99b292 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute.html @@ -0,0 +1,18 @@ + +The 'nomodule' attribute + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-no-referrer.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-no-referrer.sub.html new file mode 100644 index 0000000000..b8866f9511 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-no-referrer.sub.html @@ -0,0 +1,68 @@ + + + +Referrer with the no-referrer policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin-when-cross-origin.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin-when-cross-origin.sub.html new file mode 100644 index 0000000000..fd4c1ea496 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin-when-cross-origin.sub.html @@ -0,0 +1,82 @@ + + + +Referrer with the origin-when-cross-origin policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin.sub.html new file mode 100644 index 0000000000..a554fb4b0c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-origin.sub.html @@ -0,0 +1,71 @@ + + + +Referrer with the origin policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-policy-for-descendants.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-policy-for-descendants.sub.html new file mode 100644 index 0000000000..4a7005da84 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-policy-for-descendants.sub.html @@ -0,0 +1,122 @@ + + + +Module script descendants use the referrer policy on their ancestor, if one exists + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-same-origin.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-same-origin.sub.html new file mode 100644 index 0000000000..7d6d515a47 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-same-origin.sub.html @@ -0,0 +1,77 @@ + + + +Referrer with the same-origin policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-strict-policies.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-strict-policies.sub.html new file mode 100644 index 0000000000..1984d875b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-strict-policies.sub.html @@ -0,0 +1,38 @@ + + + +Referrer with the strict-origin referrer policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-unsafe-url.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-unsafe-url.sub.html new file mode 100644 index 0000000000..443731c1b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/referrer-unsafe-url.sub.html @@ -0,0 +1,81 @@ + + + +Referrer with the unsafe-url policy + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/404-but-js.asis b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/404-but-js.asis new file mode 100644 index 0000000000..0fe1379e56 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/404-but-js.asis @@ -0,0 +1,4 @@ +HTTP/1.1 404 Not Found +Content-Type: text/javascript + +window.ran404 = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/500-but-js.asis b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/500-but-js.asis new file mode 100644 index 0000000000..c81202f7ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/500-but-js.asis @@ -0,0 +1,4 @@ +HTTP/1.1 500 Not Found +Content-Type: text/javascript + +window.ran500 = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py new file mode 100644 index 0000000000..90551e92c3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py @@ -0,0 +1,20 @@ +def main(request, response): + headers = [ + (b"Content-Type", b"text/javascript"), + (b"Access-Control-Allow-Origin", request.GET.first(b"origin")), + (b"Access-Control-Allow-Credentials", b"true") + ] + identifier = request.GET.first(b"id") + cookie_name = request.GET.first(b"cookieName") + cookie = request.cookies.first(cookie_name, None) + if identifier is None or cookie_name is None: + return headers, b"" + + if cookie is None: + result = b"not found" + elif cookie.value == b"1": + result = b"found" + else: + result = b"different value: " + cookie.value + + return headers, b"window." + identifier + b" = '" + result + b"';" diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/credentials-iframe.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/credentials-iframe.sub.html new file mode 100644 index 0000000000..dbc14dffec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/credentials-iframe.sub.html @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/delayed-modulescript.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/delayed-modulescript.py new file mode 100644 index 0000000000..52dbfba445 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/delayed-modulescript.py @@ -0,0 +1,7 @@ +import time + +def main(request, response): + delay = float(request.GET.first(b"ms", 500)) + time.sleep(delay / 1E3) + + return [(b"Content-type", b"text/javascript")], u"export let delayedLoaded = true;" diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-helper.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-helper.sub.js new file mode 100644 index 0000000000..7d9b024e75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-helper.sub.js @@ -0,0 +1,67 @@ +// runTestsFromIframe() is used in the top-level HTML to set cookies and then +// start actual tests in iframe. +function runTestsFromIframe(iframe_url) { + const setSameOriginCookiePromise = fetch( + '/cookies/resources/set-cookie.py?name=same&path=/html/semantics/scripting-1/the-script-element/module/', + { + mode: 'no-cors', + credentials: 'include', + }); + const setCrossOriginCookiePromise = fetch( + 'http://{{domains[www2]}}:{{ports[http][0]}}/cookies/resources/set-cookie.py?name=cross&path=/html/semantics/scripting-1/the-script-element/module/', + { + mode: 'no-cors', + credentials: 'include', + }); + const windowLoadPromise = new Promise(resolve => { + window.addEventListener('load', () => { + resolve(); + }); + }); + + const iframe = document.createElement('iframe'); + Promise.all([setSameOriginCookiePromise, + setCrossOriginCookiePromise, + windowLoadPromise]).then(() => { + iframe.src = iframe_url; + document.body.appendChild(iframe); + fetch_tests_from_window(iframe.contentWindow); + }); +} + +// The functions below are used from tests within the iframe. + +let testNumber = 0; + +// importFunc and setTimeoutFunc is used to make the active script at the time +// of import() to be the script elements that call `runTest()`, +// NOT this script defining runTest(). + +function runTest(importFunc, origin, expected, source) { + let url; + let description; + if (origin === 'same') { + url = "./check-cookie.py"; + description = "Same-origin dynamic import from " + source; + } else { + url = "http://{{domains[www2]}}:{{ports[http][0]}}/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py"; + description = "Cross-origin dynamic import from " + source; + } + promise_test(() => { + const id = "test" + testNumber; + testNumber += 1; + return importFunc(url + "?id=" + id + "&cookieName=" + origin + "&origin=" + location.origin) + .then(() => { + assert_equals(window[id], expected, "cookie"); + }); + }, description); +} + +function setTimeoutWrapper(setTimeoutFunc) { + return url => { + return new Promise(resolve => { + window.resolve = resolve; + setTimeoutFunc(`import("${url}").then(window.resolve)`); + }); + }; +} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-iframe.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-iframe.sub.html new file mode 100644 index 0000000000..88204ef00b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-iframe.sub.html @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-setTimeout-iframe.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-setTimeout-iframe.sub.html new file mode 100644 index 0000000000..ffba141527 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/dynamic-import-credentials-setTimeout-iframe.sub.html @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/fast-module.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/fast-module.js new file mode 100644 index 0000000000..3a76cf71f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/fast-module.js @@ -0,0 +1 @@ +loaded.push("fast"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8-with-charset-header.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8-with-charset-header.js new file mode 100644 index 0000000000..6fc4ad395c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8-with-charset-header.js @@ -0,0 +1 @@ +import "../../serve-with-content-type.py?fn=external-script-windows1250.js&ct=text/javascript%3Bcharset=windows-1250&dummy=6"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8.js new file mode 100644 index 0000000000..3ae805d78d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8.js @@ -0,0 +1 @@ +import "../../serve-with-content-type.py?fn=external-script-windows1250.js&ct=text/javascript&dummy=5"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js new file mode 100644 index 0000000000..2d6fd96712 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js @@ -0,0 +1 @@ +export { referrer } from 'http://{{host}}:{{ports[http][0]}}/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py?name={{GET[name]}}'; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js.headers b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js.headers new file mode 100644 index 0000000000..cb762eff80 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker-insecure.sub.js.headers @@ -0,0 +1 @@ +Access-Control-Allow-Origin: * diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js new file mode 100644 index 0000000000..2c7dce9dff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js @@ -0,0 +1,2 @@ +import { referrer as referrerImport } from './referrer-checker.py?name={{GET[name]}}'; +export const referrer = referrerImport; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js.headers b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js.headers new file mode 100644 index 0000000000..cb762eff80 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-referrer-checker.sub.js.headers @@ -0,0 +1 @@ +Access-Control-Allow-Origin: * diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-remote-origin-referrer-checker.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-remote-origin-referrer-checker.sub.js new file mode 100644 index 0000000000..45a2520b68 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-remote-origin-referrer-checker.sub.js @@ -0,0 +1,2 @@ +import { referrer as referrerImport } from 'http://{{domains[www1]}}:{{ports[http][0]}}/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py?name={{GET[name]}}'; +export const referrer = referrerImport; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js new file mode 100644 index 0000000000..5a53bcd4d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js @@ -0,0 +1,2 @@ +import { referrer as referrerImport } from 'http://{{host}}:{{ports[http][0]}}/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py?name={{GET[name]}}'; +export const referrer = referrerImport; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js.headers b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js.headers new file mode 100644 index 0000000000..cb762eff80 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-same-origin-referrer-checker-from-remote-origin.sub.js.headers @@ -0,0 +1 @@ +Access-Control-Allow-Origin: * diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8-with-charset-header.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8-with-charset-header.js new file mode 100644 index 0000000000..c2ccab7c62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8-with-charset-header.js @@ -0,0 +1 @@ +import "../../serve-with-content-type.py?fn=external-script-utf8.js&ct=text/javascript%3Bcharset=windows-1250&dummy=6"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8.js new file mode 100644 index 0000000000..5708a26e07 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8.js @@ -0,0 +1 @@ +import "../../serve-with-content-type.py?fn=external-script-utf8.js&ct=text/javascript&dummy=5"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-404-but-js.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-404-but-js.js new file mode 100644 index 0000000000..d62e4f05be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-404-but-js.js @@ -0,0 +1 @@ +import "./404-but-js.asis"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-500-but-js.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-500-but-js.js new file mode 100644 index 0000000000..d62e4f05be --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-500-but-js.js @@ -0,0 +1 @@ +import "./404-but-js.asis"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-b-cross-origin.sub.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-b-cross-origin.sub.js new file mode 100644 index 0000000000..6db57b5017 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/imports-b-cross-origin.sub.js @@ -0,0 +1 @@ +import "http://{{domains[www2]}}:{{ports[http][0]}}/html/semantics/scripting-1/the-script-element/module/imports-b.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py new file mode 100644 index 0000000000..413f48d381 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/referrer-checker.py @@ -0,0 +1,6 @@ +def main(request, response): + referrer = request.headers.get(b"referer", b"") + response_headers = [(b"Content-Type", b"text/javascript"), + (b"Access-Control-Allow-Origin", b"*")] + return (200, response_headers, + b"export const referrer = '" + referrer + b"';") diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/slow-module.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/slow-module.js new file mode 100644 index 0000000000..4623ef7360 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/resources/slow-module.js @@ -0,0 +1,3 @@ +// This module is imported with pipe=trickle(d2) to make it load more slowly +// than fast-module.js +loaded.push("slow"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/script-for-event.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/script-for-event.html new file mode 100644 index 0000000000..e3b8e15b41 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/script-for-event.html @@ -0,0 +1,93 @@ + +Module scripts with for and event attributes + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/set-currentScript-on-window.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/set-currentScript-on-window.js new file mode 100644 index 0000000000..6863075bd9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/set-currentScript-on-window.js @@ -0,0 +1 @@ +window.currentScriptRecorded = document.currentScript; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1.html new file mode 100644 index 0000000000..cc4e2d69b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1.html @@ -0,0 +1,20 @@ + +Single evaluation, 1 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2.html new file mode 100644 index 0000000000..790e2fa9c6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2.html @@ -0,0 +1,20 @@ + +Single evaluation, 2 + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-cycle.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-cycle.html new file mode 100644 index 0000000000..3a42cf9e30 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-cycle.html @@ -0,0 +1,11 @@ + +Cyclic graph with slow imports + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-a.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-a.js new file mode 100644 index 0000000000..48701aa1d0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-a.js @@ -0,0 +1,3 @@ +import "./slow-module-graph-b.js"; +import "./resources/delayed-modulescript.py" +export let loaded = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-b.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-b.js new file mode 100644 index 0000000000..53a8f2026e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-b.js @@ -0,0 +1 @@ +import "./slow-module-graph-a.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/specifier-error.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/specifier-error.html new file mode 100644 index 0000000000..d07005caaa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/specifier-error.html @@ -0,0 +1,22 @@ + +Handling of invalid specifiers + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror-nested.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror-nested.js new file mode 100644 index 0000000000..de1b053c5a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror-nested.js @@ -0,0 +1,2 @@ +import "./syntaxerror.js"; +log.push("nested-syntaxerror"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror.js new file mode 100644 index 0000000000..31a9e2cbdf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/syntaxerror.js @@ -0,0 +1,2 @@ +log.push("syntaxerror"); +%!#$@#$@#$@ diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this-nested.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this-nested.js new file mode 100644 index 0000000000..f204812fd1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this-nested.js @@ -0,0 +1,2 @@ +import "./this.js"; +log.push("this-nested"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this.js new file mode 100644 index 0000000000..996a439df0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/this.js @@ -0,0 +1 @@ +log.push(this); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-error.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-error.js new file mode 100644 index 0000000000..9769c84b23 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-error.js @@ -0,0 +1,3 @@ +window.before_throwing_error = true; +throw new Error; +window.after_throwing_error = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-nested.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-nested.js new file mode 100644 index 0000000000..f1801ea366 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw-nested.js @@ -0,0 +1,2 @@ +import "./throw.js"; +log.push("throw-nested"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw.js new file mode 100644 index 0000000000..cef7918216 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw.js @@ -0,0 +1,2 @@ +log.push("throw"); +throw {foo: true} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw2.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw2.js new file mode 100644 index 0000000000..2931eec500 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/throw2.js @@ -0,0 +1,2 @@ +log.push("throw2"); +throw {bar: true} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked.any.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked.any.js new file mode 100644 index 0000000000..820f995aaf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked.any.js @@ -0,0 +1,11 @@ +promise_test(async t => { + const { checkMicrotask } = await import("./sibling-imports-not-blocked__microtask__parent.js"); + + assert_equals(checkMicrotask, "PASS"); +}, "Async modules only scheduling microtasks don't block execution of sibling modules"); + +promise_test(async t => { + const { checkTask } = await import("./sibling-imports-not-blocked__task__parent.js"); + + assert_equals(checkTask, "PASS"); +}, "Async modules scheduling tasks don't block execution of sibling modules"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-get-sync.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-get-sync.js new file mode 100644 index 0000000000..063697310a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-get-sync.js @@ -0,0 +1 @@ +export const { checkMicrotask } = globalThis; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-set-async.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-set-async.js new file mode 100644 index 0000000000..98930fed0b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__check-set-async.js @@ -0,0 +1,3 @@ +globalThis.checkMicrotask = "PASS"; +await 0; +globalThis.checkMicrotask = "FAIL"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__parent.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__parent.js new file mode 100644 index 0000000000..a28fcef9cb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__microtask__parent.js @@ -0,0 +1,2 @@ +import "./sibling-imports-not-blocked__microtask__check-set-async.js"; +export { checkMicrotask } from "./sibling-imports-not-blocked__microtask__check-get-sync.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-get-sync.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-get-sync.js new file mode 100644 index 0000000000..833acdd7ec --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-get-sync.js @@ -0,0 +1 @@ +export const { checkTask } = globalThis; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-set-async.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-set-async.js new file mode 100644 index 0000000000..0973b3c65a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__check-set-async.js @@ -0,0 +1,3 @@ +globalThis.checkTask = "PASS"; +await new Promise(r => setTimeout(r, 0)); +globalThis.checkTask = "FAIL"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__parent.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__parent.js new file mode 100644 index 0000000000..56ee5134d7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/top-level-await/sibling-imports-not-blocked__task__parent.js @@ -0,0 +1,2 @@ +import "./sibling-imports-not-blocked__task__check-set-async.js"; +export { checkTask } from "./sibling-imports-not-blocked__task__check-get-sync.js"; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/type.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/type.html new file mode 100644 index 0000000000..5817ae4d43 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/module/type.html @@ -0,0 +1,24 @@ + +Type attribute of module scripts + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents-during-evaluation.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents-during-evaluation.html new file mode 100644 index 0000000000..e4cd887c61 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents-during-evaluation.html @@ -0,0 +1,59 @@ + + +Moving script elements between documents during evaluation + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/README.md b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/README.md new file mode 100644 index 0000000000..f95e0a63a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/README.md @@ -0,0 +1,16 @@ +The tests in this directory are for script elements moved between documents. + +Use + +``` +$ tools/generate.py +``` + +to generate test HTML files (except for tests in subdirectories). + +Background: + +- https://www.w3.org/Bugs/Public/show_bug.cgi?id=11323 +- https://github.com/whatwg/html/issues/2137 +- https://github.com/whatwg/html/issues/2469 +- https://github.com/whatwg/html/pull/2673 diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-classic.html new file mode 100644 index 0000000000..2b84ae8088 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-module.html new file mode 100644 index 0000000000..09ee1490c1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-classic.html new file mode 100644 index 0000000000..477abd32cf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-module.html new file mode 100644 index 0000000000..9da2276408 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-classic.html new file mode 100644 index 0000000000..bc4deb6f17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-module.html new file mode 100644 index 0000000000..ff76954f9d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-createHTMLDocument-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-classic.html new file mode 100644 index 0000000000..768120e9d8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-module.html new file mode 100644 index 0000000000..50dd80662d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-classic.html new file mode 100644 index 0000000000..981a068230 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-module.html new file mode 100644 index 0000000000..6debb4189e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html new file mode 100644 index 0000000000..53389f20db --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-parse-error-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-classic.html new file mode 100644 index 0000000000..9c4a12226a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-module.html new file mode 100644 index 0000000000..0a0490cfc1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-inline-classic.html new file mode 100644 index 0000000000..932825709f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/after-prepare-iframe-success-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-classic.html new file mode 100644 index 0000000000..444382ac20 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-module.html new file mode 100644 index 0000000000..e1a1f7c08f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-classic.html new file mode 100644 index 0000000000..6bb5ebddbd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-module.html new file mode 100644 index 0000000000..10a6549f62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-classic.html new file mode 100644 index 0000000000..28bd935995 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-module.html new file mode 100644 index 0000000000..e665a75629 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-parse-error-inline-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-classic.html new file mode 100644 index 0000000000..8ee0dd1de1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-module.html new file mode 100644 index 0000000000..4791149c57 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-empty-src-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-classic.html new file mode 100644 index 0000000000..3a3aceaf26 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-module.html new file mode 100644 index 0000000000..c15b4fc77f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-classic.html new file mode 100644 index 0000000000..576f4d4684 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-module.html new file mode 100644 index 0000000000..c84d61c89a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-createHTMLDocument-success-inline-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-classic.html new file mode 100644 index 0000000000..febf6fcc55 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-module.html new file mode 100644 index 0000000000..f936260b8c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-classic.html new file mode 100644 index 0000000000..870c900abf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-module.html new file mode 100644 index 0000000000..fb44a89df1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-classic.html new file mode 100644 index 0000000000..986e4fa396 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-module.html new file mode 100644 index 0000000000..3a3fc38479 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-parse-error-inline-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-classic.html new file mode 100644 index 0000000000..4f03a94358 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-module.html new file mode 100644 index 0000000000..a7bd42fd32 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-empty-src-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-classic.html new file mode 100644 index 0000000000..08a8ac4afa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-module.html new file mode 100644 index 0000000000..b8c3f79fea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-classic.html new file mode 100644 index 0000000000..b639f6109d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-module.html new file mode 100644 index 0000000000..616e46310f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/before-prepare-iframe-success-inline-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-classic.html new file mode 100644 index 0000000000..745c62d898 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-module.html new file mode 100644 index 0000000000..f6353a05fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-classic.html new file mode 100644 index 0000000000..21099c3ff9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-module.html new file mode 100644 index 0000000000..2eb153acfe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-classic.html new file mode 100644 index 0000000000..88821826ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-module.html new file mode 100644 index 0000000000..f2a9d95741 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-createHTMLDocument-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-classic.html new file mode 100644 index 0000000000..d96bfe0d50 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-module.html new file mode 100644 index 0000000000..7e71bfbe15 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-fetch-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-classic.html new file mode 100644 index 0000000000..757c879897 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-module.html new file mode 100644 index 0000000000..6ec6c5970e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-inline-classic.html new file mode 100644 index 0000000000..c0b0f9d404 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-parse-error-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-classic.html new file mode 100644 index 0000000000..7955dbce62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-module.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-module.html new file mode 100644 index 0000000000..af17eb01f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-external-module.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-inline-classic.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-inline-classic.html new file mode 100644 index 0000000000..8a44e2feaf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/move-back-iframe-success-inline-classic.html @@ -0,0 +1,14 @@ + + + +Moving script elements between documents + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/README.md b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/README.md new file mode 100644 index 0000000000..dcf5597e2d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/README.md @@ -0,0 +1,6 @@ +The tests in this directory checks side effects (other than script +evaluation/event firing, which is covered by the tests in the parent directory) +caused by scripts moved between Documents. + +The tests assume that script loading is not canceled when moved between +documents (which is not explicitly specified as of Jan 2022). diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-1.html new file mode 100644 index 0000000000..c5812765eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-1.html @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-2.html new file mode 100644 index 0000000000..916673894d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-2.html @@ -0,0 +1,15 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-iframe.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-iframe.html new file mode 100644 index 0000000000..efec7657c3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/delay-load-event-iframe.html @@ -0,0 +1,4 @@ + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/helper.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/helper.js new file mode 100644 index 0000000000..cb5f45eb0d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/helper.js @@ -0,0 +1,31 @@ +function runDelayEventTest(description) { + const t_original = async_test(description + + ' still delay the load event in the original Document after move'); + const t_new = async_test(description + + ' does not delay the load event in the new Document after move'); + const iframe = document.createElement('iframe'); + iframe.setAttribute('src', 'delay-load-event-iframe.html'); + const start_time = performance.now(); + document.body.appendChild(iframe); + + window.onload = t_original.step_func_done(() => { + // The `#to-be-moved` script should delay the load event until it is loaded + // (i.e. 3 seconds), not just until it is moved out to another Document + // (i.e. 1 second). Here we expect the delay should be at least 2 seconds, + // as the latency can be slightly less than 3 seconds due to preloading. + assert_greater_than(performance.now() - start_time, 2000, + 'Load event should be delayed until script is loaded'); + }); + + window.onloadIframe = t_new.step_func_done(() => { + // The iframe's load event is fired after 2 seconds of its subresource + // loading, and shouldn't wait for the `#to-be-moved` script. + assert_less_than(performance.now() - start_time, 3000, + 'Load event should not be delayed until moved script is loaded'); + }); + + t_original.step_timeout(() => { + const script = document.querySelector('#to-be-moved'); + iframe.contentDocument.body.appendChild(script); + }, 1000); +} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/in-order.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/in-order.html new file mode 100644 index 0000000000..6a3e2b54a7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/in-order.html @@ -0,0 +1,35 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/parser-blocking.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/parser-blocking.html new file mode 100644 index 0000000000..9edde13736 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/ordering/parser-blocking.html @@ -0,0 +1,41 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/moving-between-documents-helper.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/moving-between-documents-helper.js new file mode 100644 index 0000000000..de4af6ac10 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/moving-between-documents-helper.js @@ -0,0 +1,214 @@ +"use strict"; + +function createDocument(documentType, result, inlineOrExternal, type, hasBlockingStylesheet) { + return new Promise((resolve, reject) => { + const iframe = document.createElement("iframe"); + iframe.src = + "resources/moving-between-documents-iframe.py" + + "?result=" + result + + "&inlineOrExternal=" + inlineOrExternal + + "&type=" + type + + "&hasBlockingStylesheet=" + hasBlockingStylesheet + + "&cache=" + Math.random(); + // As blocking stylesheets delays Document load events, we use + // DOMContentLoaded here. + // After that point, we expect iframe.contentDocument exists + // while still waiting for blocking stylesheet loading. + document.body.appendChild(iframe); + + window.addEventListener('message', (event) => { + if (documentType === "iframe") { + resolve([iframe.contentWindow, iframe.contentDocument]); + } else if (documentType === "createHTMLDocument") { + resolve([ + iframe.contentWindow, + iframe.contentDocument.implementation.createHTMLDocument("")]); + } else { + reject(new Error("Invalid document type: " + documentType)); + } + }, {once: true}); + }); +} + +window.didExecute = undefined; + +// For a script, there are three associated Documents that can +// potentially different: +// +// [1] script's parser document +// https://html.spec.whatwg.org/C/#parser-document +// +// [2] script's preparation-time document +// https://html.spec.whatwg.org/C/#preparation-time-document +// == script's node document at the beginning of #prepare-a-script +// +// [3] script's node document at the beginning of +// #execute-the-script-block +// +// This helper is for tests where [1]/[2]/[3] are different. + +// In the spec, scripts are executed only if [1]/[2]/[3] are all the same +// (or [1] is null and [2]==[3]). +// +// A check for [1]==[2] is in #prepare-a-script and +// a check for [1]==[3] is in #execute-the-script-block, +// but these are under debate: https://github.com/whatwg/html/issues/2137 +// +// A check for [2]==[3] is in #execute-the-script-block, which is added by +// https://github.com/whatwg/html/pull/2673 + +// timing: +// "before-prepare": +// A + """ + + if hasBlockingStylesheet: + body += u""" + + """ % random.random() + + body += u""" + + + """ + + if inlineOrExternal == b"inline" or inlineOrExternal == b"external" or inlineOrExternal == b"empty-src": + body += u""" + + """ + + # Trigger DOM processing + body += u"A" * 100000 + + response.writer.write(u"%x\r\n" % len(body)) + response.writer.write(body) + response.writer.write(u"\r\n") + + body = u"" + + if inlineOrExternal == b"inline": + time.sleep(1) + body += u""" + + + """ + elif inlineOrExternal == b"external": + time.sleep(1) + body += u""" + + + """ % (type, isomorphic_decode(result), random.random()) + elif inlineOrExternal == b"empty-src": + time.sleep(1) + body += u""" + + + """ % (type,) + + # // if readyToEvaluate is false, the script is probably + # // wasn't blocked by stylesheets as expected. + + # Trigger DOM processing + body += u"B" * 100000 + + response.writer.write(u"%x\r\n" % len(body)) + response.writer.write(body) + response.writer.write(u"\r\n") + + response.writer.write(u"0\r\n") + response.writer.write(u"\r\n") diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/slow-flag-setter.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/slow-flag-setter.py new file mode 100644 index 0000000000..20d7ed4bd0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/resources/slow-flag-setter.py @@ -0,0 +1,29 @@ + +import time + +def main(request, response): + headers = [(b"Content-Type", b"text/javascript")] + + result = request.GET.first(b"result", b"success") + if result == b"css": + time.sleep(3) + headers = [(b"Content-Type", b"text/css")] + body = u"" + else: + time.sleep(2) + + body = u""" + fetch('exec'); + console.log('exec'); + if (!window.readyToEvaluate) { + window.didExecute = "executed too early"; + } else { + window.didExecute = "executed"; + } + """ + if result == b"parse-error": + body = u"1=2 parse error;" + if result == b"fetch-error": + return 404, [(b'Content-Type', b'text/plain')], u"""window.didExecute = "fetch error";""" + + return headers, body diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/tools/generate.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/tools/generate.py new file mode 100644 index 0000000000..80a655e821 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/moving-between-documents/tools/generate.py @@ -0,0 +1,61 @@ +template = ''' + + +Moving script elements between documents + + + + + + + + +''' + +n = 0 +for timing in ["before-prepare", "after-prepare", "move-back"]: + for destType in ["iframe", "createHTMLDocument"]: + for inlineOrExternal in ["inline", "external", "empty-src"]: + for result in ["fetch-error", "parse-error", "success"]: + for type in ["classic", "module"]: + # The |inlineOrExternal| keyword creates a certain kind of script, + # and the |result| keyword can influence the generated script in + # different ways i.e., giving the script a parse-error, or creating + # a script that fails to load. When we're creating an inline script, + # it doesn't make sense to test the fetch-error case, so we ignore + # this combination, as the server will not react to it in any + # meaningful way. + if inlineOrExternal == "inline" and result == "fetch-error": + continue + + if inlineOrExternal == "empty-src": + # The "empty-src" tests aim to exercise #prepare-a-script step 26 + # substep 2, where the diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/muted-errors.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/muted-errors.sub.html new file mode 100644 index 0000000000..61643c5f08 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/muted-errors.sub.html @@ -0,0 +1,85 @@ + +Muted Errors + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-reflect.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-reflect.html new file mode 100644 index 0000000000..d6a850f58f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-reflect.html @@ -0,0 +1,75 @@ + + + +noModule IDL attribute must reflect nomodule content attribute + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-async-classic-script.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-async-classic-script.html new file mode 100644 index 0000000000..25de796830 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-async-classic-script.html @@ -0,0 +1,63 @@ + + + +External classic scripts with nomodule content attribute must not run + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-external-module-script.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-external-module-script.html new file mode 100644 index 0000000000..138b33c9fa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-external-module-script.html @@ -0,0 +1,28 @@ + + + +An external module script with nomodule must run + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-classic-scripts.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-classic-scripts.html new file mode 100644 index 0000000000..588d59975c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-classic-scripts.html @@ -0,0 +1,56 @@ + + + +Inline classic scripts with nomodule content attribute must not run + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-module-script.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-module-script.html new file mode 100644 index 0000000000..b11c25932e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-inline-module-script.html @@ -0,0 +1,32 @@ + + + +An inline module script with nomodule must run + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-synchronously-loaded-classic-scripts.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-synchronously-loaded-classic-scripts.html new file mode 100644 index 0000000000..9f6207c9a5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-synchronously-loaded-classic-scripts.html @@ -0,0 +1,41 @@ + + + +External classic scripts with nomodule content attribute must not run + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/promise-reject-and-remove.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/promise-reject-and-remove.html new file mode 100644 index 0000000000..a3b2730e56 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/promise-reject-and-remove.html @@ -0,0 +1,10 @@ + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16be.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16be.js new file mode 100644 index 0000000000..8a529e10b1 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16be.js differ diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16le.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16le.js new file mode 100644 index 0000000000..578f7f1951 Binary files /dev/null and b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-16le.js differ diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-8.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-8.js new file mode 100644 index 0000000000..fb88bdda2a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/bom-utf-8.js @@ -0,0 +1,2 @@ +// JavaScript file with UTF-8 BOM. +window.executed_utf8_bom = '三村かな子'; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cocoa-module.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cocoa-module.js new file mode 100644 index 0000000000..24360a7bfe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cocoa-module.js @@ -0,0 +1,5 @@ +export default class Cocoa { + taste() { + return "awesome"; + } +}; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cross-origin.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cross-origin.py new file mode 100644 index 0000000000..abac1901b7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/cross-origin.py @@ -0,0 +1,20 @@ +def main(request, response): + origin = request.headers.get(b"origin") + + if origin is not None: + response.headers.set(b"Access-Control-Allow-Origin", origin) + response.headers.set(b"Access-Control-Allow-Methods", b"GET") + response.headers.set(b"Access-Control-Allow-Credentials", b"true") + + if request.method == u"OPTIONS": + return u"" + + headers = [(b"Content-Type", b"text/javascript")] + milk = request.cookies.first(b"milk", None) + + if milk is None: + return headers, u"var included = false;" + elif milk.value == b"yes": + return headers, u"var included = true;" + + return headers, u"var included = false;" diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/exports-cocoa.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/exports-cocoa.js new file mode 100644 index 0000000000..02967bc631 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/exports-cocoa.js @@ -0,0 +1,3 @@ +import Cocoa from "./cocoa-module.js"; +var cocoa = new Cocoa(); +window.exportedCocoa = cocoa; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/flag-setter.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/flag-setter.js new file mode 100644 index 0000000000..3274e5bfeb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/flag-setter.js @@ -0,0 +1,3 @@ +"use strict"; + +window.didExecute = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events-helpers.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events-helpers.js new file mode 100644 index 0000000000..bbd6b09c6c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events-helpers.js @@ -0,0 +1,47 @@ +"use strict"; +// Helper functions to be used from load-error-events*.html tests. + +function event_test(name, load_to_be_fired, error_to_be_fired) { + return { + test: async_test(name), + executed: false, + load_event_to_be_fired: load_to_be_fired, + error_event_to_be_fired: error_to_be_fired + }; +} + +// Should be used as load/error event handlers of script tags, +// with |t| = the object returned by event_test(). +function onLoad(t) { + t.test.step(function() { + if (t.load_event_to_be_fired) { + assert_true(t.executed, + 'Load event should be fired after script execution'); + // Delay done() a little so that if an error event happens + // the assert_unreached is reached and fails the test. + t.test.step_timeout(() => t.test.done(), 100); + } else { + assert_unreached('Load event should not be fired.'); + } + }); +}; +function onError(t) { + t.test.step(function() { + if (t.error_event_to_be_fired) { + assert_false(t.executed); + // Delay done() a little so that if a load event happens + // the assert_unreached is reached and fails the test. + t.test.step_timeout(() => t.test.done(), 100); + } else { + assert_unreached('Error event should not be fired.'); + } + }); +}; + +// To be called from inline scripts, which expect no load/error events. +function onExecute(t) { + t.executed = true; + // Delay done() a little so that if a load/error event happens + // the assert_unreached is reached and fails the test. + t.test.step_timeout(() => t.test.done(), 100); +} diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events.py new file mode 100644 index 0000000000..1eb82cd497 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/load-error-events.py @@ -0,0 +1,15 @@ +import re + +def main(request, response): + headers = [(b"Content-Type", b"text/javascript")] + test = request.GET.first(b'test') + assert(re.match(b'^[a-zA-Z0-9_]+$', test)) + + if test.find(b'_load') >= 0: + status = 200 + content = b'"use strict"; %s.executed = true;' % test + else: + status = 404 + content = b'"use strict"; %s.test.step(function() { assert_unreached("404 script should not be executed"); });' % test + + return status, headers, content diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/promise-reject-and-remove-iframe.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/promise-reject-and-remove-iframe.html new file mode 100644 index 0000000000..6da274469f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/promise-reject-and-remove-iframe.html @@ -0,0 +1,12 @@ + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/script-type-and-language-js.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/script-type-and-language-js.js new file mode 100644 index 0000000000..d357bc4994 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/script-type-and-language-js.js @@ -0,0 +1,141 @@ +function testAttribute(attr, val, shouldRun) { + test(function() { + assert_false(window.ran, "ran variable not reset"); + let script; + if (document.contentType === 'image/svg+xml') { + // SVG + script = document.createElementNS("http://www.w3.org/2000/svg", "script"); + } else { + // HTML or XHTML + script = document.createElement("script"); + } + script.setAttribute(attr, val); + script.textContent = "window.ran = true;"; + document.querySelector('#script-placeholder').appendChild(script); + assert_equals(window.ran, shouldRun); + }, "Script should" + (shouldRun ? "" : "n't") + " run with " + attr + "=" + + format_value(val)); + window.ran = false; +} +function testTypeShouldRun(type) { + testAttribute("type", type, true); +} +function testLanguageShouldRun(lang) { + testAttribute("language", lang, true); +} +function testTypeShouldNotRun(type) { + testAttribute("type", type, false); +} +function testLanguageShouldNotRunUnlessSVG(lang) { + // In SVGs, there is no concrete spec but all browsers agree that + // language attributes have no effects and thus script elements + // without type attributes are always expected to run regardless of + // language attributes. + const expectedToRun = document.contentType === 'image/svg+xml'; + testAttribute("language", lang, expectedToRun); +} + +// Unlike `test*()` methods above, there should be a (parser-inserted) script +// with an invalid type/language that would set `window.ran` to true just +// before `testParserInsertedDidNotRun()`, and +// `testParserInsertedDidNotRun()` asserts that the script did not run. +// `window.ran` should be reset where needed. For example: +// +// +// +function testParserInsertedDidNotRun(description) { + test(() => assert_false(window.ran), + "Script shouldn't run with " + description + " (parser-inserted)"); + window.ran = false; +} + +// When prefixed by "application/", these match with +// https://mimesniff.spec.whatwg.org/#javascript-mime-type +const application = [ + "ecmascript", + "javascript", + "x-ecmascript", + "x-javascript" +]; + +// When prefixed by "text/", these match with +// https://mimesniff.spec.whatwg.org/#javascript-mime-type +const text = [ + "ecmascript", + "javascript", + "javascript1.0", + "javascript1.1", + "javascript1.2", + "javascript1.3", + "javascript1.4", + "javascript1.5", + "jscript", + "livescript", + "x-ecmascript", + "x-javascript" +]; + +const legacyTypes = [ + "javascript1.6", + "javascript1.7", + "javascript1.8", + "javascript1.9" +]; + +const spaces = [" ", "\t", "\n", "\r", "\f"]; + +window.ran = false; + +// Type attribute + +testTypeShouldRun(""); +testTypeShouldNotRun(" "); + +application.map(t => "application/" + t).forEach(testTypeShouldRun); +application.map(t => ("application/" + t).toUpperCase()).forEach( + testTypeShouldRun); + +spaces.forEach(function(s) { + application.map(t => "application/" + t + s).forEach(testTypeShouldRun); + application.map(t => s + "application/" + t).forEach(testTypeShouldRun); +}); + +application.map(t => "application/" + t + "\0").forEach(testTypeShouldNotRun); +application.map(t => "application/" + t + "\0foo").forEach( + testTypeShouldNotRun); + +text.map(t => "text/" + t).forEach(testTypeShouldRun); +text.map(t => ("text/" + t).toUpperCase()).forEach(testTypeShouldRun); + +legacyTypes.map(t => "text/" + t).forEach(testTypeShouldNotRun); + +spaces.forEach(function(s) { + text.map(t => "text/" + t + s).forEach(testTypeShouldRun); + text.map(t => s + "text/" + t).forEach(testTypeShouldRun); +}); + +text.map(t => "text/" + t + "\0").forEach(testTypeShouldNotRun); +text.map(t => "text/" + t + "\0foo").forEach(testTypeShouldNotRun); + +text.forEach(testTypeShouldNotRun); +legacyTypes.forEach(testTypeShouldNotRun); + +// Language attribute + +testLanguageShouldRun(""); +testLanguageShouldNotRunUnlessSVG(" "); + +text.forEach(testLanguageShouldRun); +text.map(t => t.toUpperCase()).forEach(testLanguageShouldRun); + +legacyTypes.forEach(testLanguageShouldNotRunUnlessSVG); + +spaces.forEach(function(s) { + text.map(t => t + s).forEach(testLanguageShouldNotRunUnlessSVG); + text.map(t => s + t).forEach(testLanguageShouldNotRunUnlessSVG); +}); +text.map(t => t + "xyz").forEach(testLanguageShouldNotRunUnlessSVG); +text.map(t => "xyz" + t).forEach(testLanguageShouldNotRunUnlessSVG); + +text.map(t => t + "\0").forEach(testLanguageShouldNotRunUnlessSVG); +text.map(t => t + "\0foo").forEach(testLanguageShouldNotRunUnlessSVG); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/set-script-executed.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/set-script-executed.js new file mode 100644 index 0000000000..a6095097dd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/set-script-executed.js @@ -0,0 +1 @@ +window.executed = true; diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/syntax-error.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/syntax-error.js new file mode 100644 index 0000000000..40dc81dcfa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/syntax-error.js @@ -0,0 +1 @@ +This cannot be parsed as JavaScript diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/throw.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/throw.js new file mode 100644 index 0000000000..be53dd1ef3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/resources/throw.js @@ -0,0 +1 @@ +document.querySelector(":::not-going-to-be-valid"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-01.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-01.html new file mode 100644 index 0000000000..c5ac0d0a62 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-01.html @@ -0,0 +1,89 @@ + + + + Script @type: unknown parameters + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-03.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-03.html new file mode 100644 index 0000000000..4ff4cc6b0b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-charset-03.html @@ -0,0 +1,20 @@ + + + +Script changing @charset + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin-network.sub.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin-network.sub.html new file mode 100644 index 0000000000..5886ab6f32 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin-network.sub.html @@ -0,0 +1,120 @@ + + +HTMLScriptElement: crossorigin attribute network test + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin.html new file mode 100644 index 0000000000..52857a08ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-crossorigin.html @@ -0,0 +1,39 @@ + + +HTMLScriptElement: crossOrigin IDL attribute + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer-xhtml.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer-xhtml.xhtml new file mode 100644 index 0000000000..3f4a50f779 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer-xhtml.xhtml @@ -0,0 +1,31 @@ + + + +XHTML Test: HTMLScriptElement - defer + + + + + +
                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer.html new file mode 100644 index 0000000000..80eb98dc75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-defer.html @@ -0,0 +1,26 @@ + + +HTML Test: HTMLScriptElement - defer + + + + +
                                                                                                                                                        + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml new file mode 100644 index 0000000000..69c4ef1f81 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml @@ -0,0 +1,22 @@ + + + Scripts with for and event attributes + + + + +
                                                                                                                                                        + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event.html new file mode 100644 index 0000000000..552ea7041a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-for-event.html @@ -0,0 +1,93 @@ + +Scripts with for and event attributes + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml new file mode 100644 index 0000000000..8dd9ceb9a6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml @@ -0,0 +1,36 @@ + + +Script inside noembed, noframes and iframe + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +<script> +run.push("noembed"); +</script> + + +<script> +run.push("noframes"); +</script> + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown-child.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown-child.html new file mode 100644 index 0000000000..2f3ce2368d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown-child.html @@ -0,0 +1,12 @@ + + +Script is not executed after script thread is shutdown + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.html new file mode 100644 index 0000000000..eb4def3ec4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.html @@ -0,0 +1,19 @@ + + +Script is not executed after script thread is shutdown + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.js new file mode 100644 index 0000000000..ccdf14c0cd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-executed-after-shutdown.js @@ -0,0 +1 @@ +script_executed(); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed-2.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed-2.py new file mode 100644 index 0000000000..4ff5be7374 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed-2.py @@ -0,0 +1,4 @@ +def main(request, response): + headers = [(b"Content-Type", b"text/javascript")] + body = u"test2_token = \"script executed\";" + return 200, headers, body diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.html new file mode 100644 index 0000000000..44ad30b018 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.html @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.py new file mode 100644 index 0000000000..9354d42703 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-not-found-not-executed.py @@ -0,0 +1,4 @@ +def main(request, response): + headers = [(b"Content-Type", b"text/javascript")] + body = u"test1_token = \"script executed\";" + return 404, headers, body diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-1.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-1.html new file mode 100644 index 0000000000..0fe39b11a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-1.html @@ -0,0 +1,12 @@ + + +Test that the insertion point is defined in the error event of a parser-inserted script that actually started a fetch (but just had it fail). + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html new file mode 100644 index 0000000000..6d3f3ef09e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html @@ -0,0 +1,13 @@ + + +Test that the insertion point is not defined in the error event of a + parser-inserted script that has an unparseable URL + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-insertion-point.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-insertion-point.html new file mode 100644 index 0000000000..ce3ddeee65 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-insertion-point.html @@ -0,0 +1,12 @@ + + +Test that the insertion point is defined in the load event of a parser-inserted script. + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-string.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-string.html new file mode 100644 index 0000000000..85f2d4dcfa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-onload-string.html @@ -0,0 +1,17 @@ + +Script: setting onload to a string + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-referrerpolicy-idl.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-referrerpolicy-idl.html new file mode 100644 index 0000000000..bf01cb83b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-referrerpolicy-idl.html @@ -0,0 +1,26 @@ + + +<script> referrerPolicy IDL + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-supports.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-supports.html new file mode 100644 index 0000000000..495056fce9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-supports.html @@ -0,0 +1,52 @@ + + +HTMLScriptElement.supports + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications-csp.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications-csp.html new file mode 100644 index 0000000000..a991151066 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications-csp.html @@ -0,0 +1,52 @@ + + + +Modify HTMLScriptElement's text after #prepare-a-script that violates CSP + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications.html new file mode 100644 index 0000000000..cb54da6995 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-modifications.html @@ -0,0 +1,40 @@ + + + +Modify HTMLScriptElement's text after #prepare-a-script + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml new file mode 100644 index 0000000000..33a4635db3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml @@ -0,0 +1,28 @@ + + + +HTMLScriptElement.text + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text.html new file mode 100644 index 0000000000..6e86472246 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-text.html @@ -0,0 +1,72 @@ + + +HTMLScriptElement.text + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-empty.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-empty.html new file mode 100644 index 0000000000..6ce1b279f7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-empty.html @@ -0,0 +1,48 @@ + +Script @type and @language: empty strings + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-svg.svg b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-svg.svg new file mode 100644 index 0000000000..2f31d4d75c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-svg.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-xhtml.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-xhtml.xhtml new file mode 100644 index 0000000000..0bfdfce3c4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js-xhtml.xhtml @@ -0,0 +1,42 @@ + + + +Script @type and @language: JavaScript types + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js.html new file mode 100644 index 0000000000..009123de2b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-js.html @@ -0,0 +1,35 @@ + +Script @type and @language: JavaScript types + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-with-params.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-with-params.html new file mode 100644 index 0000000000..977ee7d0a4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-and-language-with-params.html @@ -0,0 +1,41 @@ + +Script @type and @language: unknown type parameters + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-whitespace.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-whitespace.html new file mode 100644 index 0000000000..5e8acb1a17 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/script-type-whitespace.html @@ -0,0 +1,27 @@ + +<script type> non-ASCII whitespace handling + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/scripting-enabled.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/scripting-enabled.html new file mode 100644 index 0000000000..a2671a78f6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/scripting-enabled.html @@ -0,0 +1,16 @@ + + +JS is disabled on documents created without a browsing context + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-json-then-js.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-json-then-js.py new file mode 100644 index 0000000000..9610734d44 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-json-then-js.py @@ -0,0 +1,21 @@ +# Respond with valid JSON to the first request with the given key, +# and with valid JavaScript to the second. Used for testing scenarios where +# the same request URL results in different responses on subsequent requests. +def main(request, response): + try: + stash_key = request.GET.first(b"key") + + run_count = request.server.stash.take(stash_key) + if not run_count: + run_count = 0 + + if run_count == 0: + response.headers.set(b"Content-Type", b"text/json") + response.content = '{"hello": "world"}' + else: + response.headers.set(b"Content-Type", b"application/javascript") + response.content = "export default 'hello';" + + request.server.stash.put(stash_key, run_count + 1) + except: + response.set_error(400, u"Not enough parameters") diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-with-content-type.py b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-with-content-type.py new file mode 100644 index 0000000000..675b3fc3eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/serve-with-content-type.py @@ -0,0 +1,17 @@ +import os + +from wptserve.utils import isomorphic_decode + +def main(request, response): + directory = os.path.dirname(isomorphic_decode(__file__)) + + try: + file_name = request.GET.first(b"fn") + content_type = request.GET.first(b"ct") + with open(os.path.join(directory, isomorphic_decode(file_name)), u"rb") as fh: + content = fh.read() + + response.headers.set(b"Content-Type", content_type) + response.content = content + except: + response.set_error(400, u"Not enough parameters or file not found") diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-1-helper.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-1-helper.html new file mode 100644 index 0000000000..d9b0c84ca4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-1-helper.html @@ -0,0 +1,2 @@ +Some diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-2-helper.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-2-helper.html new file mode 100644 index 0000000000..a9ee80026a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onerror-insertion-point-2-helper.html @@ -0,0 +1,2 @@ +Some diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.html new file mode 100644 index 0000000000..f0236b4fbb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.html @@ -0,0 +1,2 @@ +Some diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.js b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.js new file mode 100644 index 0000000000..8a96a0b783 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/support/script-onload-insertion-point-helper.js @@ -0,0 +1 @@ +document.write("te"); diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html new file mode 100644 index 0000000000..8676319b20 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html @@ -0,0 +1,150 @@ + + + +HTML Templates: Parsing XHTML: Node's node document + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/tag-name.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/tag-name.xhtml new file mode 100644 index 0000000000..a1e293d1cb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/tag-name.xhtml @@ -0,0 +1,16 @@ + + + tagName in template + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html new file mode 100644 index 0000000000..40abda5684 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html @@ -0,0 +1,102 @@ + + + +HTML Templates: Child nodes of template element in XHTML documents + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html new file mode 100644 index 0000000000..416a3bc615 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html @@ -0,0 +1,71 @@ + + + +HTML Templates: serialize template contents instead of template element + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-ref.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-ref.html new file mode 100644 index 0000000000..55c8b2e30c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-ref.html @@ -0,0 +1,6 @@ + +Template Reftest Reference + + +

                                                                                                                                                        Test passes if there's no anything below this line.

                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html new file mode 100644 index 0000000000..fc310f47c8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html @@ -0,0 +1,12 @@ + + Template Test: check that template content is invisible by default + + + + + +

                                                                                                                                                        Test passes if there's no anything below this line.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html new file mode 100644 index 0000000000..92f3d81eac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html @@ -0,0 +1,12 @@ + + Template Test: check that template content is invisible by default + + + + + +

                                                                                                                                                        Test passes if there's no anything below this line.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html new file mode 100644 index 0000000000..4c477fde79 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html @@ -0,0 +1,19 @@ + + HTML Templates: template content is invisible by default + + + + + + +

                                                                                                                                                        Test passes if there's no anything below this line.

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html new file mode 100644 index 0000000000..c668d90953 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html @@ -0,0 +1,82 @@ + + + +HTML Templates: Clone template node: All the children of template content are copied if 'copy children flag' set to true + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html new file mode 100644 index 0000000000..a2afc23041 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html @@ -0,0 +1,126 @@ + + + +HTML Templates: ownerDocument of cloned template content is set to template content owner + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html new file mode 100644 index 0000000000..d063acded9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html @@ -0,0 +1,83 @@ + + + +HTML Templates: The template contents owner document type is HTML document + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html new file mode 100644 index 0000000000..a087f788e5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html @@ -0,0 +1,44 @@ + + + +HTML Templates: The template contents owner document (no browsing context) + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html new file mode 100644 index 0000000000..cf2e30b643 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html @@ -0,0 +1,67 @@ + + + +HTML Templates: The template contents owner document (there's browsing context) + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents.html new file mode 100644 index 0000000000..4a61dc8d3b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/definitions/template-contents.html @@ -0,0 +1,172 @@ + + + +HTML Templates: The template contents is a DocumentFragment + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html new file mode 100644 index 0000000000..0968b37f92 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html @@ -0,0 +1,105 @@ + + + +HTML Templates: innerHTML of template element replaces all referenced by the content attribute + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html new file mode 100644 index 0000000000..2cb149853f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html @@ -0,0 +1,12 @@ + + + + The file contains several </template> tag in HTML body without start one + + + + +
                                                                                                                                                        The file contains several </template> tag in HTML body without start one
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html new file mode 100644 index 0000000000..02d0c7be65 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html @@ -0,0 +1,12 @@ + + + + + The file contains several </template> tag in HTML head without start one + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html new file mode 100644 index 0000000000..b84d55595f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html @@ -0,0 +1,10 @@ + + + + The file contains frameset with the template and frameset end tag in it + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html new file mode 100644 index 0000000000..e4e45bcea5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html @@ -0,0 +1,12 @@ + + + + The file contains template element with open div tag, but without end div tag, in the head + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html new file mode 100644 index 0000000000..9db2b4af06 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html @@ -0,0 +1,14 @@ + + + + The file contains template element with open table, tr, td tags, but without end td, tr, table tags, in the head + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html new file mode 100644 index 0000000000..0de652cf36 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html @@ -0,0 +1,10 @@ + + + + The file contains html root element with attributes and some in the body + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml new file mode 100644 index 0000000000..14db5004dc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml @@ -0,0 +1,14 @@ + + + + Template tag with children div tags inside + + + +

                                                                                                                                                        Template tag with div tags inside

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml new file mode 100644 index 0000000000..406fa6c3d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml @@ -0,0 +1,16 @@ + + + + Template tag with children div tags inside another template tag + + + +

                                                                                                                                                        Template tag with children div tags inside another template tag

                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html new file mode 100644 index 0000000000..b9dd5f47a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html @@ -0,0 +1,10 @@ + + + + Empty template tag with attribute content + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html new file mode 100644 index 0000000000..a1f246fd63 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html @@ -0,0 +1,10 @@ + + + + BODY tag inside template + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html new file mode 100644 index 0000000000..304acf3025 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html @@ -0,0 +1,12 @@ + + + + Div tag inside template tag + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html new file mode 100644 index 0000000000..f1a539cc08 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html @@ -0,0 +1,11 @@ + + + + Empty template tag + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html new file mode 100644 index 0000000000..4331367df3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html @@ -0,0 +1,10 @@ + + + + FRAMESET tag inside template + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html new file mode 100644 index 0000000000..1e3a337e8d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html @@ -0,0 +1,10 @@ + + + + HEAD tag inside template + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html new file mode 100644 index 0000000000..5dd3a28e6a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html @@ -0,0 +1,10 @@ + + + + HTML tag inside template + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html new file mode 100644 index 0000000000..dc2dc6f15f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html @@ -0,0 +1,10 @@ + + Contains second template tag inside template tag + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html new file mode 100644 index 0000000000..4639b4dc8e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html @@ -0,0 +1,14 @@ + + + + The file contains template element with open table, tr, td tags, without end td, tr, table tags + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html new file mode 100644 index 0000000000..a401848efc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html @@ -0,0 +1,10 @@ + + + + Some text inside template tag + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents.html new file mode 100644 index 0000000000..07256c06a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-contents.html @@ -0,0 +1,12 @@ + + + + Div tag inside template tag + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html new file mode 100644 index 0000000000..d64848c8db --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html @@ -0,0 +1,12 @@ + + + + Div tag inside template tag + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html new file mode 100644 index 0000000000..4801178454 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html @@ -0,0 +1,12 @@ + + + + Template tag inside frameset + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html new file mode 100644 index 0000000000..6bab00ea99 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html @@ -0,0 +1,13 @@ + + + + Template tag inside head + + + + + Nothing interesting here + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/two-templates.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/two-templates.html new file mode 100644 index 0000000000..f6e9ab58e8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/resources/two-templates.html @@ -0,0 +1,17 @@ + + + + The file contains two template elements + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html new file mode 100644 index 0000000000..1539afbe1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html @@ -0,0 +1,70 @@ + + + +HTML Templates: serialize template contents instead of template element + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html new file mode 100644 index 0000000000..b4c11b841f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html @@ -0,0 +1,114 @@ + + + +HTML Templates: Content attribute of template element is read-only + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html new file mode 100644 index 0000000000..0c60c10738 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html @@ -0,0 +1,192 @@ + + + +HTML Templates: When node's document changes its owner document should be changed + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html new file mode 100644 index 0000000000..caa1beab47 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html @@ -0,0 +1,135 @@ + + + +HTML Templates: Template element as a descendant of the body element. + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-construction-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-construction-in-inactive-document-crash.html new file mode 100644 index 0000000000..496a47b2c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-construction-in-inactive-document-crash.html @@ -0,0 +1,5 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-hierarcy.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-hierarcy.html new file mode 100644 index 0000000000..823c0c830f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-hierarcy.html @@ -0,0 +1,81 @@ + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-in-inactive-document-crash.html new file mode 100644 index 0000000000..66c564c77a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-in-inactive-document-crash.html @@ -0,0 +1,7 @@ + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-move-to-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-move-to-inactive-document-crash.html new file mode 100644 index 0000000000..89c56d1663 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-move-to-inactive-document-crash.html @@ -0,0 +1,7 @@ +
                                                                                                                                                        + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html new file mode 100644 index 0000000000..da76c6b04f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html @@ -0,0 +1,59 @@ + + + +HTML Templates: Node document of the template content attribute must be template contents owner + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content.html new file mode 100644 index 0000000000..b9e790daf8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-content.html @@ -0,0 +1,63 @@ + + + +HTML Templates: HTML elements in template content + + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html new file mode 100644 index 0000000000..70028c5ecd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html @@ -0,0 +1,26 @@ + + + +HTML Templates: Template element as a descendant of the body element. + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html new file mode 100644 index 0000000000..ce20a7413e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html @@ -0,0 +1,62 @@ + + + +HTML Templates: Template element as a descendant of the frameset element. + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html new file mode 100644 index 0000000000..611ec50bb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html @@ -0,0 +1,26 @@ + + + +HTML Templates: Template element as a descendant of the head element. + + + + + + + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-element-clone-into-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-element-clone-into-inactive-document-crash.html new file mode 100644 index 0000000000..56b199d1eb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-element-clone-into-inactive-document-crash.html @@ -0,0 +1,7 @@ + + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-set-inner-html-in-inactive-document-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-set-inner-html-in-inactive-document-crash.html new file mode 100644 index 0000000000..79a76ee76f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-element/template-set-inner-html-in-inactive-document-crash.html @@ -0,0 +1,6 @@ + + diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-table-crash.html b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-table-crash.html new file mode 100644 index 0000000000..0f6a49874d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-template-element/template-table-crash.html @@ -0,0 +1,13 @@ + + + + + + + + + + Crash +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json b/testing/web-platform/tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json new file mode 100644 index 0000000000..748a548ca9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json @@ -0,0 +1 @@ +{"original_id":"the-h1,-h2,-h3,-h4,-h5,-and-h6-elements"} \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/selectors/META.yml b/testing/web-platform/tests/html/semantics/selectors/META.yml new file mode 100644 index 0000000000..3195b8671c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/META.yml @@ -0,0 +1,2 @@ +suggested_reviewers: + - lilles diff --git a/testing/web-platform/tests/html/semantics/selectors/case-sensitivity/values.window.js b/testing/web-platform/tests/html/semantics/selectors/case-sensitivity/values.window.js new file mode 100644 index 0000000000..1973398bff --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/case-sensitivity/values.window.js @@ -0,0 +1,91 @@ +// https://html.spec.whatwg.org/#case-sensitivity-of-selectors +[ + "accept", + "accept-charset", + "align", + "alink", + "axis", + "bgcolor", + "charset", + "checked", + "clear", + "codetype", + "color", + "compact", + "declare", + "defer", + "dir", + "direction", + "disabled", + "enctype", + "face", + "frame", + "hreflang", + "http-equiv", + "lang", + "language", + "link", + "media", + "method", + "multiple", + "nohref", + "noresize", + "noshade", + "nowrap", + "readonly", + "rel", + "rev", + "rules", + "scope", + "scrolling", + "selected", + "shape", + "target", + "text", + "type", + "valign", + "valuetype", + "vlink", +].forEach(attributeName => { + const xmlDocument = new Document(); + const htmlDocument = document; + [ + { + input: xmlDocument.createElementNS("http://www.w3.org/1999/xhtml", "a"), + expected: false, + title: " in XML", + }, + { + input: xmlDocument.createElementNS("http://www.w3.org/1999/xhtml", "unknown"), + expected: false, + title: " in XML", + }, + { + input: xmlDocument.createElementNS("", "unknown"), + expected: false, + title: "<:unknown> in XML" + }, + { + input: htmlDocument.createElementNS("http://www.w3.org/1999/xhtml", "a"), + expected: true, + title: " in HTML", + }, + { + input: htmlDocument.createElementNS("http://www.w3.org/1999/xhtml", "unknown"), + expected: true, + title: " in HTML", + }, + { + input: htmlDocument.createElementNS("", "unknown"), + expected: false, + title: "<:unknown> in HTML" + }, + ].forEach(({ input, expected, title }) => { + test(t => { + t.add_cleanup(() => input.removeAttribute(attributeName)); + input.setAttribute(attributeName, "HEYÏ"); + assert_equals(input.matches(`[${attributeName}^=hey]`), expected, `^=hey`); + assert_false(input.matches(`[${attributeName}^=heyi]`)); + }, `${attributeName}'s value is properly ASCII-case-insensitive for ${title}`); + }); +}); diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/active-disabled.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/active-disabled.html new file mode 100644 index 0000000000..a75a157c58 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/active-disabled.html @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/autofill.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/autofill.html new file mode 100644 index 0000000000..b7c3644bdb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/autofill.html @@ -0,0 +1,11 @@ + + +Selector: pseudo-classes (:autofill) + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-001-manual.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-001-manual.html new file mode 100644 index 0000000000..76a963a600 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-001-manual.html @@ -0,0 +1,18 @@ + + + + CSS Selectors (:checked) + + + + + +

                                                                                                                                                        Anything that is checked below should be blue.

                                                                                                                                                        +

                                                                                                                                                        X

                                                                                                                                                        +

                                                                                                                                                        X X

                                                                                                                                                        +

                                                                                                                                                        +

                                                                                                                                                        + + \ No newline at end of file diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-indeterminate.window.js b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-indeterminate.window.js new file mode 100644 index 0000000000..167cbdd37f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-indeterminate.window.js @@ -0,0 +1,27 @@ +test(() => { + const input = document.createElement("input"); + input.type = "checkbox"; + + assert_false(input.matches(":checked:indeterminate")); + assert_false(input.matches(":checked")); + assert_false(input.matches(":indeterminate")); + + input.checked = true; + input.indeterminate = true; + + assert_true(input.matches(":checked:indeterminate")); + assert_true(input.matches(":checked")); + assert_true(input.matches(":indeterminate")); + + input.indeterminate = false; + + assert_false(input.matches(":checked:indeterminate")); + assert_true(input.matches(":checked")); + assert_false(input.matches(":indeterminate")); + + input.checked = false; + + assert_false(input.matches(":checked:indeterminate")); + assert_false(input.matches(":checked")); + assert_false(input.matches(":indeterminate")); +}, "An element can be :checked and :indeterminate at the same time"); diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-type-change.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-type-change.html new file mode 100644 index 0000000000..661d9e4355 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked-type-change.html @@ -0,0 +1,24 @@ + + +Selector: pseudo-class :checked input type change + + + + + + +This text should be green. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked.html new file mode 100644 index 0000000000..754c2342bc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/checked.html @@ -0,0 +1,44 @@ + + +Selector: pseudo-classes (:checked) + + + + + +
                                                                                                                                                        + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        + + + + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/default.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/default.html new file mode 100644 index 0000000000..3187801f67 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/default.html @@ -0,0 +1,64 @@ + + +Selector: pseudo-classes (:default) + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-dynamic.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-dynamic.html new file mode 100644 index 0000000000..8f2951f8ef --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-dynamic.html @@ -0,0 +1,47 @@ + + + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        
                                                                                                                                                        +
                                                                                                                                                        +  
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-html-input-dynamic-text.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-html-input-dynamic-text.html
                                                                                                                                                        new file mode 100644
                                                                                                                                                        index 0000000000..0c50cec369
                                                                                                                                                        --- /dev/null
                                                                                                                                                        +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir-html-input-dynamic-text.html
                                                                                                                                                        @@ -0,0 +1,21 @@
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir.html
                                                                                                                                                        new file mode 100644
                                                                                                                                                        index 0000000000..588c3c6850
                                                                                                                                                        --- /dev/null
                                                                                                                                                        +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir.html
                                                                                                                                                        @@ -0,0 +1,99 @@
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +  
                                                                                                                                                        +    
                                                                                                                                                        +    Selector: pseudo-classes (:dir(ltr), :dir(rtl))
                                                                                                                                                        +    
                                                                                                                                                        +    
                                                                                                                                                        +    
                                                                                                                                                        +    
                                                                                                                                                        +    
                                                                                                                                                        +    
                                                                                                                                                        +  
                                                                                                                                                        +  
                                                                                                                                                        +    
                                                                                                                                                        + WERBEH + HEBREW + HEBREW + WERBEH + HEBREW + إيان + WERBEH + WERBEH + HEBREW + ‮WERBEH‬ + WERBEH + HEBREW + + + + + + HEBREW + إيان + עברית + + + +
                                                                                                                                                        إيان
                                                                                                                                                        +
                                                                                                                                                        HEBREWإيان
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir01.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir01.html new file mode 100644 index 0000000000..61bbd574a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/dir01.html @@ -0,0 +1,18 @@ + + +Selector: pseudo-classes (:dir(ltr), :dir(rtl)) in iso-8859-8 documents + + + + + +
                                                                                                                                                        +
                                                                                                                                                        This text is left to right
                                                                                                                                                        this is right to left
                                                                                                                                                        +
                                                                                                                                                        This text is left to rightthis is left to right
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/disabled.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/disabled.html new file mode 100644 index 0000000000..142a12dd12 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/disabled.html @@ -0,0 +1,80 @@ + + +Selector: pseudo-classes (:disabled) + + + + + + +
                                                                                                                                                        + + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + +

                                                                                                                                                        +

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/enabled.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/enabled.html new file mode 100644 index 0000000000..0ad0e1b402 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/enabled.html @@ -0,0 +1,43 @@ + + +Selector: pseudo-classes (:enabled) + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + +
                                                                                                                                                        +

                                                                                                                                                        + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html new file mode 100644 index 0000000000..80a75bb99e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html @@ -0,0 +1,24 @@ + + +Selector: pseudo-classes (:focus for autofocus) + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-iframe.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-iframe.html new file mode 100644 index 0000000000..a269f1c671 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus-iframe.html @@ -0,0 +1,5 @@ + + +Selector: pseudo-classes (:focus) + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus.html new file mode 100644 index 0000000000..a319b24ef0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/focus.html @@ -0,0 +1,51 @@ + + +Selector: pseudo-classes (:focus) + + + + + + +
                                                                                                                                                        + + + + + + +
                                                                                                                                                        hello
                                                                                                                                                        +
                                                                                                                                                        content
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group-ref.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group-ref.html new file mode 100644 index 0000000000..68d95fe240 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group-ref.html @@ -0,0 +1,21 @@ + + +Test reference + +
                                                                                                                                                        + + + + + + + + + + + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group.html new file mode 100644 index 0000000000..a49b957021 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-group.html @@ -0,0 +1,28 @@ + + +:indeterminate and input type=radio + + + + + +
                                                                                                                                                        + + + + + + + + + + + +
                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio.html new file mode 100644 index 0000000000..4a7b2d6ece --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-radio.html @@ -0,0 +1,26 @@ + + +:indeterminate and input type=radio + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-type-change.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-type-change.html new file mode 100644 index 0000000000..b3e4cce302 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate-type-change.html @@ -0,0 +1,24 @@ + + +Selector: pseudo-class :indeterminate input type change + + + + + + +This text should be green. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate.html new file mode 100644 index 0000000000..df04846676 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/indeterminate.html @@ -0,0 +1,37 @@ + + +Selector: pseudo-classes (:indeterminate) + + + + + +
                                                                                                                                                        + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/input-checkbox-switch.tentative.window.js b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/input-checkbox-switch.tentative.window.js new file mode 100644 index 0000000000..b5d9898a64 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/input-checkbox-switch.tentative.window.js @@ -0,0 +1,75 @@ +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.switch = true; + input.indeterminate = true; + + assert_false(input.matches(":indeterminate")); +}, "Switch control does not match :indeterminate"); + +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.switch = true; + input.indeterminate = true; + + assert_false(input.matches(":indeterminate")); + + input.switch = false; + assert_true(input.matches(":indeterminate")); +}, "Checkbox that is no longer a switch control does match :indeterminate"); + +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.indeterminate = true; + + assert_true(input.matches(":indeterminate")); + + input.setAttribute("switch", "blah"); + assert_false(input.matches(":indeterminate")); +}, "Checkbox that becomes a switch control does not match :indeterminate"); + +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.indeterminate = true; + + assert_true(document.body.matches(":has(:indeterminate)")); + + input.switch = true; + assert_false(document.body.matches(":has(:indeterminate)")); +}, "Parent of a checkbox that becomes a switch control does not match :has(:indeterminate)"); + +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.switch = true + input.checked = true; + + assert_true(document.body.matches(":has(:checked)")); + + input.switch = false; + assert_true(document.body.matches(":has(:checked)")); + + input.checked = false; + assert_false(document.body.matches(":has(:checked)")); +}, "Parent of a switch control that becomes a checkbox continues to match :has(:checked)"); + +test(t => { + const input = document.body.appendChild(document.createElement("input")); + t.add_cleanup(() => input.remove()); + input.type = "checkbox"; + input.switch = true; + input.indeterminate = true; + assert_false(input.matches(":indeterminate")); + input.type = "text"; + input.removeAttribute("switch"); + input.type = "checkbox"; + assert_true(input.matches(":indeterminate")); +}, "A switch control that becomes a checkbox in a roundabout way"); diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange-type-change.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange-type-change.html new file mode 100644 index 0000000000..9c1be9ca27 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange-type-change.html @@ -0,0 +1,43 @@ + + +Selector: pseudo-classes (:in-range, :out-of-range) input type change + + + + + + +This text should be green. + +This text should be green. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange.html new file mode 100644 index 0000000000..e9acbb3741 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/inrange-outofrange.html @@ -0,0 +1,84 @@ + + +Selector: pseudo-classes (:in-range, :out-of-range) + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/invalid-after-clone.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/invalid-after-clone.html new file mode 100644 index 0000000000..92345602a8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/invalid-after-clone.html @@ -0,0 +1,28 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html new file mode 100644 index 0000000000..e9733eca70 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html @@ -0,0 +1,21 @@ + + +Selector: pseudo-classes (:link) + + + + + + +
                                                                                                                                                        + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/placeholder-shown-type-change.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/placeholder-shown-type-change.html new file mode 100644 index 0000000000..206ae80c75 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/placeholder-shown-type-change.html @@ -0,0 +1,27 @@ + + +Selector: pseudo-class :placeholder-shown input type change + + + + + + +This text should be green. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-type-change.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-type-change.html new file mode 100644 index 0000000000..90ef1d25d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-type-change.html @@ -0,0 +1,36 @@ + + +Selector: pseudo-classes (:read-write, :read-only) input type change + + + + + + +This text should be green on lime background. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly.html new file mode 100644 index 0000000000..fb8a5b9ad7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/readwrite-readonly.html @@ -0,0 +1,118 @@ + + +Selector: pseudo-classes (:read-write, :read-only) + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + + + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +

                                                                                                                                                        paragraph1.

                                                                                                                                                        +

                                                                                                                                                        paragraph2.

                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +

                                                                                                                                                        + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional-hidden.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional-hidden.html new file mode 100644 index 0000000000..fe3d6e2f42 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional-hidden.html @@ -0,0 +1,36 @@ + + +Selector: pseudo-classes (:required, :optional) for hidden input + + + + + + +This text should be green on lime background. + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional.html new file mode 100644 index 0000000000..f06fdfa1e0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/required-optional.html @@ -0,0 +1,35 @@ + + +Selector: pseudo-classes (:required, :optional) + + + + + +
                                                                                                                                                        + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/utils.js b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/utils.js new file mode 100644 index 0000000000..7a2fb77f10 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/utils.js @@ -0,0 +1,20 @@ +function getElementsByIds(ids) { + var result = []; + ids.forEach(function(id) { + result.push(document.getElementById(id)); + }); + return result; +} + +function testSelectorIdsMatch(selector, ids, testName) { + test(function(){ + var elements = document.querySelectorAll(selector); + assert_array_equals([...elements], getElementsByIds(ids)); + }, testName); +} + +function testSelectorElementsMatch(selector, elements, testName) { + test(function(){ + assert_array_equals([...document.querySelectorAll(selector)], elements); + }, testName); +} diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid-fieldset-disconnected.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid-fieldset-disconnected.html new file mode 100644 index 0000000000..6ad329438a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid-fieldset-disconnected.html @@ -0,0 +1,57 @@ + + +Selector: pseudo-classes (:valid, :invalid) on disconnected fieldset element + + + + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid.html new file mode 100644 index 0000000000..d93407707f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/valid-invalid.html @@ -0,0 +1,146 @@ + + + + +Selector: pseudo-classes (:valid, :invalid) + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/META.yml b/testing/web-platform/tests/html/semantics/tabular-data/META.yml new file mode 100644 index 0000000000..ce84e4ae4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/META.yml @@ -0,0 +1,2 @@ +suggested_reviewers: + - tkent-google diff --git a/testing/web-platform/tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html b/testing/web-platform/tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html new file mode 100644 index 0000000000..b8449229d5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html @@ -0,0 +1,50 @@ + + +HTMLTableCellElement.cellIndex + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/historical.html b/testing/web-platform/tests/html/semantics/tabular-data/historical.html new file mode 100644 index 0000000000..a6be56e13d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/historical.html @@ -0,0 +1,25 @@ + +Historical table features should not be supported + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/html-table-section-element.js b/testing/web-platform/tests/html/semantics/tabular-data/html-table-section-element.js new file mode 100644 index 0000000000..68b68ceed8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/html-table-section-element.js @@ -0,0 +1,22 @@ +// https://html.spec.whatwg.org/multipage/#dom-tbody-rows +function testRowsAttribute(localName) { + var elem = document.createElement(localName); + assert_equals(elem.rows.length, 0); + + // Child

                                                                                                                                                        should *not* count as a row + elem.appendChild(document.createElement("p")); + assert_equals(elem.rows.length, 0); + + // Child should count as a row + var childTr = document.createElement("tr"); + elem.appendChild(childTr); + assert_equals(elem.rows.length, 1); + + // Nested table with child should *not* count as a row + var nested = document.createElement(localName); + nested.appendChild(document.createElement("tr")); + var nestedTable = document.createElement("table"); + nestedTable.appendChild(nested); + childTr.appendChild(nestedTable); + assert_equals(elem.rows.length, 1); +} diff --git a/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/col-span-limits.html b/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/col-span-limits.html new file mode 100644 index 0000000000..a4a425b9c1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/col-span-limits.html @@ -0,0 +1,59 @@ + +Limits on col/colgroup.span + + + +

                                                                                                                                                        +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        +These two must look the same, each having 2 cells in one row: + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/span-limits.html b/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/span-limits.html new file mode 100644 index 0000000000..cdfa61bbcd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/processing-model-1/span-limits.html @@ -0,0 +1,66 @@ + +Limits on colSpan/rowSpan + + + +
                                                                                                                                                        + + +
                                                                                                                                                        aa + +
                                                                                                                                                        a +
                                                                                                                                                        + + +
                                                                                                                                                        aa + +
                                                                                                                                                        a +
                                                                                                                                                        + + + +
                                                                                                                                                        a + +
                                                                                                                                                        + + + +
                                                                                                                                                        a + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-caption-element/caption_001.html b/testing/web-platform/tests/html/semantics/tabular-data/the-caption-element/caption_001.html new file mode 100644 index 0000000000..ecb1bef854 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-caption-element/caption_001.html @@ -0,0 +1,70 @@ + + + + HTML5 Table API Tests + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/caption-methods.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/caption-methods.html new file mode 100644 index 0000000000..a349ed2b77 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/caption-methods.html @@ -0,0 +1,276 @@ + + + + + Creating and deleting captions + + + + + + + + +
                                                                                                                                                        + + + + + + + + + + + caption + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/createTBody.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/createTBody.html new file mode 100644 index 0000000000..6100aedfdf --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/createTBody.html @@ -0,0 +1,173 @@ + + +HTMLTableElement.createTBody + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/delete-caption.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/delete-caption.html new file mode 100644 index 0000000000..6183fa98b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/delete-caption.html @@ -0,0 +1,94 @@ + + + + deleteCaption() + + + + + + + + +
                                                                                                                                                        Fixture table caption
                                                                                                                                                        + + + + +
                                                                                                                                                        Fixture table captionA second caption element
                                                                                                                                                        + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        Nested caption
                                                                                                                                                        +
                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-01.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-01.html new file mode 100644 index 0000000000..8ed7b5fad6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-01.html @@ -0,0 +1,24 @@ + +insertRow(): INDEX_SIZE_ERR + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-02.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-02.html new file mode 100644 index 0000000000..410425fb1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-02.html @@ -0,0 +1,34 @@ + +insertRow(): Empty table + + + + +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-03.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-03.html new file mode 100644 index 0000000000..19c3ceb3c6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/insertRow-method-03.html @@ -0,0 +1,32 @@ + +insertRow(): non-empty table + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/remove-row.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/remove-row.html new file mode 100644 index 0000000000..43a128c57e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/remove-row.html @@ -0,0 +1,64 @@ + + +Delete Row tests + + + + + + + + + + + + + + + + + + +
                                                                                                                                                        First columnSecond column
                                                                                                                                                        1.11.2
                                                                                                                                                        2.12.2
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tBodies.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tBodies.html new file mode 100644 index 0000000000..128dbc9f7d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tBodies.html @@ -0,0 +1,40 @@ + +HTMLTableElement.tBodies + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tFoot.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tFoot.html new file mode 100644 index 0000000000..40220bc1e2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tFoot.html @@ -0,0 +1,65 @@ + + +tFoot tests + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tHead.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tHead.html new file mode 100644 index 0000000000..fadebecd6f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/tHead.html @@ -0,0 +1,74 @@ + + +tHead tests + + + + +
                                                                                                                                                        + + +
                                                                                                                                                        + +
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-insertRow.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-insertRow.html new file mode 100644 index 0000000000..8a9574ecdd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-insertRow.html @@ -0,0 +1,56 @@ + + +HTMLTableElement.insertRow + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-rows.html b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-rows.html new file mode 100644 index 0000000000..8bc23d5a7c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-table-element/table-rows.html @@ -0,0 +1,234 @@ + +HTMLTableElement.rows + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/deleteRow.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/deleteRow.html new file mode 100644 index 0000000000..695c1ea50b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/deleteRow.html @@ -0,0 +1,61 @@ + + +HTMLTableSectionElement#deleteRow + + + + +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        ABCDEF
                                                                                                                                                        12345
                                                                                                                                                        ABC12345DEF
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/insertRow.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/insertRow.html new file mode 100644 index 0000000000..f5c2227ca6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/insertRow.html @@ -0,0 +1,56 @@ + + +HTMLTableSectionElement#insertRow + + + + +
                                                                                                                                                        + + + + + +
                                                                                                                                                        ABCDEF
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/rows.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/rows.html new file mode 100644 index 0000000000..eb155de774 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tbody-element/rows.html @@ -0,0 +1,15 @@ + + +'tbody' element, 'rows' attribute + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tfoot-element/rows.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tfoot-element/rows.html new file mode 100644 index 0000000000..fe70d6f286 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tfoot-element/rows.html @@ -0,0 +1,15 @@ + + +'tfoot' element, 'rows' attribute + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-thead-element/rows.html b/testing/web-platform/tests/html/semantics/tabular-data/the-thead-element/rows.html new file mode 100644 index 0000000000..7830281a01 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-thead-element/rows.html @@ -0,0 +1,15 @@ + + +'thead' element, 'rows' attribute + + + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/cells.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/cells.html new file mode 100644 index 0000000000..2678d3b1c2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/cells.html @@ -0,0 +1,28 @@ + + +HTMLTableRowElement#cells + + + +
                                                                                                                                                        + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        FirstSecondThird + + +
                                                                                                                                                        Nested first
                                                                                                                                                        +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/deleteCell.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/deleteCell.html new file mode 100644 index 0000000000..9962617a71 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/deleteCell.html @@ -0,0 +1,61 @@ + + +HTMLTableRowElement#deleteCell + + + + +
                                                                                                                                                        + + + + + + + +
                                                                                                                                                        ABCDE12345ABC12
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/insertCell.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/insertCell.html new file mode 100644 index 0000000000..11cd213fe7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/insertCell.html @@ -0,0 +1,64 @@ + + +HTMLTableRowElement#insertCell + + + + +
                                                                                                                                                        + + + +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/rowIndex.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/rowIndex.html new file mode 100644 index 0000000000..117712563d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/rowIndex.html @@ -0,0 +1,77 @@ + +HTMLTableRowElement.rowIndex + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html new file mode 100644 index 0000000000..ef5366739e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html @@ -0,0 +1,130 @@ + + +HTMLTableRowElement.sectionRowIndex + + +
                                                                                                                                                        + + + + + + + + + + + + + + + + + +
                                                                                                                                                        + + + + + + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/historical.html b/testing/web-platform/tests/html/semantics/text-level-semantics/historical.html new file mode 100644 index 0000000000..7fe83a95ed --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/historical.html @@ -0,0 +1,29 @@ + +Historical text-level element features should not be supported + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-click-handler-with-null-browsing-context-crash.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-click-handler-with-null-browsing-context-crash.html new file mode 100644 index 0000000000..a9fd6b82bd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-click-handler-with-null-browsing-context-crash.html @@ -0,0 +1,21 @@ + +HTMLAnchorElement.onclick with null browsing conext + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-404.py b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-404.py new file mode 100644 index 0000000000..abb85139b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-404.py @@ -0,0 +1,2 @@ +def main(request, response): + return 404, [(b"Content-Type", b"text/html")], b'Some content for the masses.' * 100 diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-404.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-404.html new file mode 100644 index 0000000000..3c8adc0b97 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-404.html @@ -0,0 +1,25 @@ + + +Clicking on an <a> element with a download attribute and href that leads to 404 should not navigate + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-redirect-to-javascript.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-redirect-to-javascript.html new file mode 100644 index 0000000000..09f63b6f4d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click-redirect-to-javascript.html @@ -0,0 +1,29 @@ + + +Clicking on an <a> element with a download attribute and href that redirects to 'javascript:' should not navigate or execute + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click.html new file mode 100644 index 0000000000..22d329f245 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-download-click.html @@ -0,0 +1,33 @@ + + +Clicking on an <a> element with a download attribute must not throw an exception + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-stringifier.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-stringifier.html new file mode 100644 index 0000000000..1085a74aa6 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a-stringifier.html @@ -0,0 +1,16 @@ + +HTMLAnchorElement stringifier + + + + + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html new file mode 100644 index 0000000000..e0bb73be0f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html @@ -0,0 +1,34 @@ + +HTMLAnchorElement.text getting + + + + +
                                                                                                                                                        + +
                                                                                                                                                        +a b c +a b c +a b c +a c + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html new file mode 100644 index 0000000000..879a9e3d08 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html @@ -0,0 +1,41 @@ + +HTMLAnchorElement.text setting + + + + +
                                                                                                                                                        +
                                                                                                                                                        +a b c +a c +a b c + +
                                                                                                                                                        + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-404.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-404.html new file mode 100644 index 0000000000..8c5d8f4565 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-404.html @@ -0,0 +1,2 @@ + +Click me diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-click.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-click.html new file mode 100644 index 0000000000..7d36c21d1e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-click.html @@ -0,0 +1,2 @@ + +Click me diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-redirect-to-javascript.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-redirect-to-javascript.html new file mode 100644 index 0000000000..4ff8b61e3b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-download-redirect-to-javascript.html @@ -0,0 +1,5 @@ + + +Click me diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-onclick-handler-iframe.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-onclick-handler-iframe.html new file mode 100644 index 0000000000..711e40f9d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-a-element/resources/a-onclick-handler-iframe.html @@ -0,0 +1 @@ +link diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage-notref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage-notref.html new file mode 100644 index 0000000000..3d3c46a281 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage-notref.html @@ -0,0 +1,6 @@ + + +HTML Reference File + + +

                                                                                                                                                        You enter a small room. Your sword glows brighter. A rat scurries past the corner wall.

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage.html new file mode 100644 index 0000000000..ff2105dcae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-b-element/b-usage.html @@ -0,0 +1,8 @@ + + +HTML test: b - highlight keywords + + + + +

                                                                                                                                                        You enter a small room. Your sword glows brighter. A rat scurries past the corner wall.

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-ref.html new file mode 100644 index 0000000000..eff61bb419 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-ref.html @@ -0,0 +1,36 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[:)], [+- a ב], [d ג 1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[d ג 1] ,[+- a ב] ,[:)]‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[:)], [+- a ב], [d ג 1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[d ג 1] ,[+- a ב] ,[:)]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html new file mode 100644 index 0000000000..3a9d90c76b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html @@ -0,0 +1,46 @@ + + + + + HTML Test: BDI: has dir=auto by default + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + In each DIV of the test: + - the first BDI, having no characters with strong direction, should inherit the parent direction; + - the second BDI, having an LTR character first, should be LTR by default; + - the third BDI, having an RTL character first, should be RTL by default. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        [:)], [+- a ב], [1 ג d]...
                                                                                                                                                        +
                                                                                                                                                        [(:], [+- a ב], [1 ג d]...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[:)], [+- a ב], [d ג 1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[d ג 1] ,[+- a ב] ,[:)]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-ref.html new file mode 100644 index 0000000000..b4d44c5101 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-ref.html @@ -0,0 +1,44 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html new file mode 100644 index 0000000000..1ce9da6b76 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html @@ -0,0 +1,56 @@ + + + + + HTML Test: BDI: neutral when contains LRO or RLO without PDF + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‮ - the RLO (right-to-left-override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO and RLO. + If the BDI in the test's first DIV were a SPAN, the RLO it contains, not being closed by a + PDF, would visually reorder the de into ed. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א‮bcde...
                                                                                                                                                        +
                                                                                                                                                        א‮bcde...
                                                                                                                                                        +
                                                                                                                                                        א‮bcde...
                                                                                                                                                        +
                                                                                                                                                        a‭בגדה...
                                                                                                                                                        +
                                                                                                                                                        a‭בגדה...
                                                                                                                                                        +
                                                                                                                                                        a‭בגדה...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭cbאde...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        ‭...הדaבג‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-ref.html new file mode 100644 index 0000000000..d5d7674a45 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-ref.html @@ -0,0 +1,44 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html new file mode 100644 index 0000000000..158576885c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html @@ -0,0 +1,52 @@ + + + + + HTML Test: BDI: neutral when nested + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א + [a + [ב + [b + 4] + 3] + 2] + 1
                                                                                                                                                        +
                                                                                                                                                        א + [a + [ב + [b + 4] + 3] + 2] + 1
                                                                                                                                                        +
                                                                                                                                                        א + [a + [ב + [b + 4] + 3] + 2] + 1
                                                                                                                                                        +
                                                                                                                                                        a + [א + [b + [ב + 3] + 2] + 1] + 0
                                                                                                                                                        +
                                                                                                                                                        a + [א + [b + [ב + 3] + 2] + 1] + 0
                                                                                                                                                        +
                                                                                                                                                        a + [א + [b + [ב + 3] + 2] + 1] + 0
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭1 + [a + [3 + [b + 4] + ב] + 2] + א‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        ‭a + [1 + [b + [3 + ב] + 2] + א] + 0‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-ref.html new file mode 100644 index 0000000000..df7af7778a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-ref.html @@ -0,0 +1,44 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html new file mode 100644 index 0000000000..37e467c173 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html @@ -0,0 +1,53 @@ + + + + + HTML Test: BDI: neutral when number + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the 1 inside it would be visually ordered + to the left of the א. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א - [1]...
                                                                                                                                                        +
                                                                                                                                                        א - [1]...
                                                                                                                                                        +
                                                                                                                                                        א - [1]...
                                                                                                                                                        +
                                                                                                                                                        a - [1]...
                                                                                                                                                        +
                                                                                                                                                        a - [1]...
                                                                                                                                                        +
                                                                                                                                                        a - [1]...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א - [1]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[1] - a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-ref.html new file mode 100644 index 0000000000..ec8e34627d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-ref.html @@ -0,0 +1,36 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 b] c [d ה] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [e ד] ג [ב 1] a‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 b] c [d ה] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [e ד] ג [ב 1] a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html new file mode 100644 index 0000000000..7bb8a20811 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html @@ -0,0 +1,47 @@ + + + + + HTML Test: BDI: paragraph-level container + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDIs in the test's first DIV were just SPANs, the א would appear between the 1 + and the b, and the ו between the d and the ה. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א [1 b] c [d ה] ו...
                                                                                                                                                        +
                                                                                                                                                        a [1 ב] ג [ד e] f...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 b] c [d ה] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [e ד] ג [ב 1] a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-ref.html new file mode 100644 index 0000000000..c0f323ea2c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-ref.html @@ -0,0 +1,47 @@ + + + + + + + + + + +
                                                                                                                                                        Test passes if the two boxes below look exactly the same.
                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html new file mode 100644 index 0000000000..822120721f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html @@ -0,0 +1,58 @@ + + + + + HTML Test: BDI: neutral to another BDI + + + + + + + + + +
                                                                                                                                                        Test passes if the two boxes below look exactly the same.
                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDIs in the test's first DIV were SPANs, the ב would be rendered to the left + of the א. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        [א] > [ב]...
                                                                                                                                                        +
                                                                                                                                                        [א] > [ב]...
                                                                                                                                                        +
                                                                                                                                                        [א] > [ב]...
                                                                                                                                                        +
                                                                                                                                                        [a] > [b]...
                                                                                                                                                        +
                                                                                                                                                        [a] > [b]...
                                                                                                                                                        +
                                                                                                                                                        [a] > [b]...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-ref.html new file mode 100644 index 0000000000..9aef97c0ea --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-ref.html @@ -0,0 +1,47 @@ + + + + + + + + + + +
                                                                                                                                                        Test passes if the two boxes below look exactly the same.
                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html new file mode 100644 index 0000000000..85aec46686 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html @@ -0,0 +1,59 @@ + + + + + HTML Test: BDI: neutral to another immediately following BDI + + + + + + + + + +
                                                                                                                                                        Test passes if the two boxes below look exactly the same.
                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDIs in the test's first DIV were SPANs, the ב would be rendered to the left of + the א. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-ref.html new file mode 100644 index 0000000000..a34d09bd24 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html new file mode 100644 index 0000000000..76da57c2b9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html @@ -0,0 +1,54 @@ + + + + + HTML Test: BDI: neutral to following letter + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the ב would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        [א] > ב...
                                                                                                                                                        +
                                                                                                                                                        [א] > ב...
                                                                                                                                                        +
                                                                                                                                                        [א] > ב...
                                                                                                                                                        +
                                                                                                                                                        [a] > b...
                                                                                                                                                        +
                                                                                                                                                        [a] > b...
                                                                                                                                                        +
                                                                                                                                                        [a] > b...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] > ב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...b < [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-ref.html new file mode 100644 index 0000000000..80f36183b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html new file mode 100644 index 0000000000..ce41983f00 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html @@ -0,0 +1,54 @@ + + + + + HTML Test: BDI: neutral to immediately following letter + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the following DIV were a SPAN, the ב would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-ref.html new file mode 100644 index 0000000000..5e39eabd28 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html new file mode 100644 index 0000000000..46772de642 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html @@ -0,0 +1,54 @@ + + + + + HTML Test: BDI: neutral to preceding letter + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the ב would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א > [ב]...
                                                                                                                                                        +
                                                                                                                                                        א > [ב]...
                                                                                                                                                        +
                                                                                                                                                        א > [ב]...
                                                                                                                                                        +
                                                                                                                                                        a > [b]...
                                                                                                                                                        +
                                                                                                                                                        a > [b]...
                                                                                                                                                        +
                                                                                                                                                        a > [b]...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א > [ב]...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...[b] < a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-ref.html new file mode 100644 index 0000000000..80f36183b0 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html new file mode 100644 index 0000000000..192115775c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html @@ -0,0 +1,54 @@ + + + + + HTML Test: BDI: neutral to immediately preceding letter + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the ב would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        אב...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        ab...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭אב...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        ‭...ba‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-ref.html new file mode 100644 index 0000000000..ad15d468b8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html new file mode 100644 index 0000000000..ff566737f2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html @@ -0,0 +1,54 @@ + + + + + HTML Test: BDI: neutral to following number + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the 3 would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        [א] (3 reviews)...
                                                                                                                                                        +
                                                                                                                                                        [א] (3 reviews)...
                                                                                                                                                        +
                                                                                                                                                        [א] (3 reviews)...
                                                                                                                                                        +
                                                                                                                                                        [a] (3)...
                                                                                                                                                        +
                                                                                                                                                        [a] (3)...
                                                                                                                                                        +
                                                                                                                                                        [a] (3)...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭[א] (3 reviews)...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        ‭...(3) [a]‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-ref.html new file mode 100644 index 0000000000..d0f1097ade --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-ref.html @@ -0,0 +1,45 @@ + + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html new file mode 100644 index 0000000000..62a3b50ffe --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html @@ -0,0 +1,53 @@ + + + + + HTML Test: BDI: neutral to immediately following number + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, the 1 would be rendered to the left + of the א +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א1...
                                                                                                                                                        +
                                                                                                                                                        א1...
                                                                                                                                                        +
                                                                                                                                                        א1...
                                                                                                                                                        +
                                                                                                                                                        a1...
                                                                                                                                                        +
                                                                                                                                                        a1...
                                                                                                                                                        +
                                                                                                                                                        a1...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭א1...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        ‭...1a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-ref.html new file mode 100644 index 0000000000..d7967c77fc --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-ref.html @@ -0,0 +1,44 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html new file mode 100644 index 0000000000..bff339ec34 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html @@ -0,0 +1,56 @@ + + + + + HTML Test: BDI: neutral to surrounding letters + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDI in the test's first DIV were a SPAN, its b would prevent the א and the ב + from forming a single RTL run and thus keep the >s between from being mirrored into <s. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א > [b] > ג...
                                                                                                                                                        +
                                                                                                                                                        א > [b] > ג...
                                                                                                                                                        +
                                                                                                                                                        א > [b] > ג...
                                                                                                                                                        +
                                                                                                                                                        a > [ב] > c...
                                                                                                                                                        +
                                                                                                                                                        a > [ב] > c...
                                                                                                                                                        +
                                                                                                                                                        a > [ב] > c...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭ג < [b] < א...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        ‭...a > [ב] > c‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-ref.html new file mode 100644 index 0000000000..9859de4747 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-ref.html @@ -0,0 +1,52 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + ‭b < א‬
                                                                                                                                                        + ‭>>>‬
                                                                                                                                                        + ‭ד < c...‬ +
                                                                                                                                                        +
                                                                                                                                                        + ‭a > ב‬
                                                                                                                                                        + ‭<<<‬
                                                                                                                                                        + ‭...ג > d‬ +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + ‭b < א‬
                                                                                                                                                        + ‭>>>‬
                                                                                                                                                        + ‭ד < c...‬ +
                                                                                                                                                        +
                                                                                                                                                        + ‭a > ב‬
                                                                                                                                                        + ‭<<<‬
                                                                                                                                                        + ‭...ג > d‬ +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html new file mode 100644 index 0000000000..3e21fcb0fd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html @@ -0,0 +1,73 @@ + + + + + HTML Test: BDI: neutral when wrapped + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: +   - Non-breaking space. + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + In the test below, the non-breaking spaces in the BDI's middle "word" make it so long that it + must be displayed on a line of its own, with the BDI wrapped before and after it. At the same + time, the content surrounding the BDI is supposed to form a single directional run, despite + the containing element and the BDI both having the opposite direction, because the BDI must be + treated as a neutral. Thus, on the line containing the first part of the BDI, the BDI's + content must appear after the content preceding it, and on the line containing the last part + of the BDI, the BDI content must appear before the content following it, where both 'before' + and 'after' are defined relative to the surrounding directional run. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + א > + b +>>>                                                  + c + > ד... +
                                                                                                                                                        +
                                                                                                                                                        + a > + ב +>>>                                                  + ג + > d... +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        + ‭b < א‬
                                                                                                                                                        + ‭>>>‬
                                                                                                                                                        + ‭ד < c...‬ +
                                                                                                                                                        +
                                                                                                                                                        + ‭a > ב‬
                                                                                                                                                        + ‭<<<‬
                                                                                                                                                        + ‭...ג > d‬ +
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-ref.html new file mode 100644 index 0000000000..0c74ecf68a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-ref.html @@ -0,0 +1,36 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 2 3 b] c [d ה?!] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [!?e ד] ג [ב 3 2 1] a‬
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 2 3 b] c [d ה?!] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [!?e ד] ג [ב 3 2 1] a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html new file mode 100644 index 0000000000..f133a95772 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html @@ -0,0 +1,46 @@ + + + + + HTML Test: BDI: paragraph-level container + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ו - The first six Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. + If the BDIs in the test's first DIV were just SPANs, the א would order the 1 2 3 as + 3 2 1, and the ו would (with the ה) order the ?! as !?. +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        א [1 2 3 b] c [d ה?!] ו...
                                                                                                                                                        +
                                                                                                                                                        a [1 2 3 ב] ג [ד e?!] f...
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        +
                                                                                                                                                        ‭א [1 2 3 b] c [d ה?!] ו...‬
                                                                                                                                                        +
                                                                                                                                                        ‭...f [!?e ד] ג [ב 3 2 1] a‬
                                                                                                                                                        +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html new file mode 100644 index 0000000000..feadc26d7b --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html @@ -0,0 +1,17 @@ + + + + + HTML Test: bdo - text directionality formatting control for its children + + + + + + +

                                                                                                                                                        Test passes if there is text 'WERBEH'.

                                                                                                                                                        + + HEBREW + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html new file mode 100644 index 0000000000..8a7861086a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html @@ -0,0 +1,15 @@ + + + + + HTML Test: The value 'ltr' of dir attribute specifies a left-to-right override + + + + + + +

                                                                                                                                                        Test passes if there is text 'WERBEH'.

                                                                                                                                                        + WERBEH + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html new file mode 100644 index 0000000000..75a45e198f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html @@ -0,0 +1,18 @@ + + + + + HTML Test: bdo - override the Unicode bidirectional algorithm + + + + + + +

                                                                                                                                                        Test passes if there is text 'WERBEH'.

                                                                                                                                                        +

                                                                                                                                                        + ‮WERBEH‬ +

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001-ref.html new file mode 100644 index 0000000000..83d2dc4a16 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001-ref.html @@ -0,0 +1,11 @@ + + + + +directional type reference + + +

                                                                                                                                                        Test passes if there is text 'WERBEH'.

                                                                                                                                                        +
                                                                                                                                                        WERBEH
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html new file mode 100644 index 0000000000..772dcf43b3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html @@ -0,0 +1,14 @@ + + + + +directional type + + + + + +

                                                                                                                                                        Test passes if there is text 'WERBEH'.

                                                                                                                                                        +HEBREW + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-ref.html new file mode 100644 index 0000000000..c2dd4daa7a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-ref.html @@ -0,0 +1,38 @@ + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ט - The first nine Hebrew letters (strongly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        + ‭אב גד 1. I like ה. fg hi‬ +
                                                                                                                                                        + ‭ab cd 2. ה is great! וז חט‬ +
                                                                                                                                                        +
                                                                                                                                                        + ‭אב גד 1. I like ה. fg hi‬ +
                                                                                                                                                        + ‭ab cd 2. ה is great! וז חט‬ +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html new file mode 100644 index 0000000000..89e7f2f1aa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html @@ -0,0 +1,59 @@ + + + + + HTML Test: BR in inline ancestors + + + + + + + + + +

                                                                                                                                                        Test passes if the two boxes below look exactly the same.

                                                                                                                                                        +
                                                                                                                                                        + Key to entities used below: + א ... ט - The first nine Hebrew letters (strongly RTL). + ‎ - The LRM (left-to-right mark) formatting character (invisible, stronly LTR). + ‏ - The RLM (right-to-left mark) formatting character (invisible, stronly RTL). + ‭ - The LRO (left-to-right override) formatting character. + ‬ - The PDF (pop directional formatting) formatting character; closes LRO. +
                                                                                                                                                        +
                                                                                                                                                        + בא‎ + ih + גד + fg‏ + 1. I like ה.
                                                                                                                                                        + 2. ה is great!
                                                                                                                                                        + ‏cd
                                                                                                                                                        + וז
                                                                                                                                                        + ba
                                                                                                                                                        + ‎טח +
                                                                                                                                                        +
                                                                                                                                                        + ‭אב גד 1. I like ה. fg hi‬ +
                                                                                                                                                        + ‭ab cd 2. ה is great! וז חט‬ +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-ref.html new file mode 100644 index 0000000000..f07c077917 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi-ref.html @@ -0,0 +1,19 @@ + + + + HTML Test reference: BR separates bidi paragraph + + + + + + +

                                                                                                                                                        Test passes if the rightmost character in the first line below is a full stop and to the left of it is a Hebrew letter.

                                                                                                                                                        +
                                                                                                                                                        + A Hebrew letter and a full stop: א.‎ +
                                                                                                                                                        + א this line begins with a Hebrew letter. +
                                                                                                                                                        +

                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi.html new file mode 100644 index 0000000000..1dfa6836f3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-br-element/br-bidi.html @@ -0,0 +1,22 @@ + + + + + HTML Test: BR separates bidi paragraph + + + + + + + + +

                                                                                                                                                        Test passes if the rightmost character in the first line below is a full stop and to the left of it is a Hebrew letter.

                                                                                                                                                        +
                                                                                                                                                        + A Hebrew letter and a full stop: א. +
                                                                                                                                                        + א this line begins with a Hebrew letter. +
                                                                                                                                                        + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html new file mode 100644 index 0000000000..3caed3a02e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html @@ -0,0 +1,11 @@ + + + + +
                                                                                                                                                        +
                                                                                                                                                        + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage-notref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage-notref.html new file mode 100644 index 0000000000..f5747811ae --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage-notref.html @@ -0,0 +1,6 @@ + + +HTML Reference File + + +

                                                                                                                                                        君くん子しは和わして同どうぜず

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage.html new file mode 100644 index 0000000000..59c076cd09 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-ruby-element/ruby-usage.html @@ -0,0 +1,8 @@ + + +HTML test: ruby - mark phrasing content + + + + +

                                                                                                                                                        くんしてどうぜず

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-time-element/001.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-time-element/001.html new file mode 100644 index 0000000000..e1cd0480ac --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-time-element/001.html @@ -0,0 +1,68 @@ + + + + + HTML time element API + + + + + + +
                                                                                                                                                        + +

                                                                                                                                                        + + + + diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html new file mode 100644 index 0000000000..bedb6d62e8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html @@ -0,0 +1,10 @@ + + +The wbr element + + + + +

                                                                                                                                                        Loremipsumdolorsit
                                                                                                                                                        amet,consectetur
                                                                                                                                                        adipisicingelit,sed
                                                                                                                                                        doeiusmodtempor
                                                                                                                                                        incididuntutlaboreet
                                                                                                                                                        doloremagnaaliqua.Ut
                                                                                                                                                        enimadminimveniam,
                                                                                                                                                        quisnostrud
                                                                                                                                                        exercitationullamco
                                                                                                                                                        laborisnisiutaliquip
                                                                                                                                                        exeacommodo
                                                                                                                                                        consequat.Duisaute
                                                                                                                                                        iruredolorin
                                                                                                                                                        reprehenderitin
                                                                                                                                                        voluptatevelitesse
                                                                                                                                                        cillumdoloreeufugiat
                                                                                                                                                        nullapariatur.
                                                                                                                                                        Excepteursint
                                                                                                                                                        occaecatcupidatatnon
                                                                                                                                                        proident,suntinculpa
                                                                                                                                                        quiofficiadeserunt
                                                                                                                                                        mollitanimidest
                                                                                                                                                        laborum.

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html b/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html new file mode 100644 index 0000000000..aa3912028e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html @@ -0,0 +1,12 @@ + + +The wbr element + + + + + + +

                                                                                                                                                        AHEM_ipsumdolorsitamet,consecteturadipisicingelit,seddoeiusmodtemporincididuntutlaboreetdoloremagnaaliqua.Utenimadminimveniam,quisnostrudexercitationullamcolaborisnisiutaliquipexeacommodoconsequat.Duisauteiruredolorinreprehenderitinvoluptatevelitessecillumdoloreeufugiatnullapariatur.Excepteursintoccaecatcupidatatnonproident,suntinculpaquiofficiadeseruntmollitanimidestlaborum.

                                                                                                                                                        diff --git a/testing/web-platform/tests/html/semantics/the-link-element/attr-link-fetchpriority.html b/testing/web-platform/tests/html/semantics/the-link-element/attr-link-fetchpriority.html new file mode 100644 index 0000000000..8aa515fa4c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/the-link-element/attr-link-fetchpriority.html @@ -0,0 +1,26 @@ + +Fetch Priority - Link element + + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/the-link-element/resources/stylesheet.css b/testing/web-platform/tests/html/semantics/the-link-element/resources/stylesheet.css new file mode 100644 index 0000000000..9d9d772fb4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/the-link-element/resources/stylesheet.css @@ -0,0 +1,3 @@ +body { + background-color: green; +} -- cgit v1.2.3